Essential Skills and Experience:
- Strong Core Java Development: Solid understanding of OOP, data structures, algorithms, concurrency, and exception handling.
- Java Ecosystem:
- Spring Boot: Proven experience building RESTful APIs
- Maven/Gradle: Proficiency with build automation.
- JUnit/Mockito: Experience with Unit Testing
- HTTP Client & API Interaction:
- Experience with Java HTTP client libraries (e.g., java.net.http, Apache HttpClient, SpringWebClient).
- JSON Processing: Experience with JSON serialization/deserialization.
- API Authentication: Understanding and implementing API Keys, Basic Auth, and OAUTH 2.0.
- API Error Handling: Experience with HTTP status codes, retries, and backoff/circuit breaker strategies.
- Azure-Specific Skills:
- Azure Functions: Strong understanding of triggers, bindings, and function app structures.
- Azure Services Integration: Experience with Azure Storage, Service Bus/Events Hub.
- Azure Key Vault: Essential for secure secret management.
- Managed Identities: Experience with credential-less access to Azure resources.
- Monitoring: Familiarity with Azure Monitor/App Insights for logging and tracing.
- Serverless Principles: Understanding event-driven architecture, statelessness, and cold start considerations.
- DevOps: Experience with Git for version control and CI/CD pipelines for deployment.