About the Company
Our client is a multinational information technology (IT) and business consulting firm that provides a wide range of services, including strategic IT consulting, systems integration, managed IT services, and business process outsourcing. The company has a global presence, serving clients across various industries to help them with digital transformation and other complex challenges.
About the Role
Senior Developer with expertise in various technical skills and a strong focus on architecture, design, problem-solving, and innovation. Strong coding skills
Responsibilities
Technical Skills
Expertise in Java & Jakarta EE :
Expert level proficiency in Java SE (minimum Java SE 11, preferred Java SE 17 / 21)
Deep knowledge of Jakarta EE specifications, including JPA (EclipseLink), CDI, EJB, JAX-RS and Annotation Processing (Jakarta EE 10)
Experience with Jakarta EE containers (Websphere Liberty or similar)
Cloud Platforms :
Hands-on experience with cloud providers like AWS, Azure, or Google Cloud
Understanding of cloud-native development practices, including containers (Docker, Kubernetes) and serverless architectures
Asynchronous Programming :
Proficiency in asynchronous programming paradigms using technologies like JMS, Kafka, or RabbitMQ
Familiarity with patterns to deal with asynchronous complexity like SAGA, command-response-pattern or inbox / outbox
Domain-Driven Design (DDD) :
Experience designing and implementing solutions following DDD principles
Strong understanding of strategic and tactical DDD, including bounded contexts, aggregates, entities, and repositories
Ability to translate principles like hexagonal architecture into practical software design
Distributed Systems :
Knowledge of distributed system patterns like eventual consistency
Experience designing systems for high availability, scalability, and resilience in a cloud environment
APIs and Microservices :
Proficiency in designing and developing RESTful APIs
Knowledge of microservices architecture like self-contained systems and tools like Quarkus or MicroProfile
Databases :
Strong experience with relational databases (PostgreSQL)
Deep understanding of central data modeling, transaction handling and concurrency control concepts
Knowledge of data storage best practices in distributed and asynchronous systems
Software Development Ecosystem :
Hands-on experience of industry standard dev tools like source code management (Git), CI / CD (Jenkins, ArgoCD) and runtime tools (Docker / Podman)
Architecture & Design
Solution Architecture :
Ability to define and oversee the system’s architecture in line with the principles of DDD and cloud-based infrastructure
Experience in creating high-level and low-level designs, addressing scalability, maintainability, and performance
Event-Driven Architecture :
Experience designing and building event-driven architectures, ensuring decoupling of services and efficient message passing
Security :
Knowledge of security best practices and vulnerability prevention strategies in cloud environments
Team Leadership
Mentorship :
Ability to mentor junior and mid-level developers, guiding them through complex design and implementation challenges
Foster a culture of continuous learning and improvement within the development team
Collaboration :
Strong collaboration with other teams (DevOps, QA, Product Management) to ensure alignment on technical and business goals
Experience working in agile development environments (Scrum / Kanban)
Problem-Solving & Innovation
Complex Problem-Solving :
Ability to identify and solve complex technical problems, especially in areas related to system concurrency, data consistency, and distributed processing
Technical Innovation :
Stay updated with the latest advancements in Jakarta EE, DDD, and cloud technologies, promoting their adoption when appropriate
Strong track record of driving innovation and introducing best practices
Soft Skills
Strong Communication :
Excellent verbal and written communication skills, able to convey technical ideas clearly and concisely to both technical and nontechnical stakeholders
Decision-Making :
Ability to make well-informed decisions under pressure, particularly in high-stakes scenarios involving the production system
Adaptability :
Comfortable with evolving technologies and environments, especially with the rapid changes in cloud and asynchronous systems
Qualifications : B.E. / B.Tech
Experience :
Minimum 10 plus years of experience
Required Skills :
Technical skills as outlined in the responsibilities section.
Senior Developer • India