Java Technical Lead
Role DescriptionLead the design, development, and implementation of software applications.Maintain and improve existing codebases; lead peer review processes.Mentor junior developers and provide technical guidance to enhance team capabilities.Collaborate with cross-functional teams to gather requirements and translate them into technical specifications.Skills & Proficiency LevelsDesign & Architecture: Review architecture diagrams and design specifications; guide best practices; handle security, scalability, resilience, and NFRsJava Programming: Strong SOLID principles; clean, efficient Java 8 code (Lambdas, Streams); Reactive concepts; Spring, JPA/Hibernate proficiencyMicroservices Implementation: Explain patterns (Saga, Circuit Breaker); API design and inter-service communication; Spring Boot and distributed systemsEvent Streaming: Kafka/Azure Event Hubs architecture; pub-sub, partitioning, replication; exactly-once processing; schema management; event-driven designCloud (Azure) Familiar with AKS, Helm, Azure Event Hubs; define deployment strategy on AzureDevOps & Deployment: CI/CD pipelines; containerization (Docker, Kubernetes)Problem-Solving & Decision-Making Quick analysis of issues and effective solutions; architectural decisions under constraintsCollaboration Cross-functional teamwork (DevOps, QA, Product); culture of knowledge sharing