You will design, build, and maintain scalable distributed web applications using Java.
Responsibilities
- Write clean, scalable code and refactor existing software to improve performance and reliability.
- Collaborate with cross-functional teams to produce software architecture and technical designs.
- Test, deploy, and debug applications throughout the software development life cycle.
- Develop technical documentation and serve as a subject matter expert for core applications.
- Partner with peers to implement new technologies, libraries, and frameworks.
Required Skills
- 8+ years of experience building modern, distributed web applications and microservices.
- 8+ years of experience in software architecture, design patterns, and scaling.
- 8+ years of experience with relational and NoSQL database principles.
- 7+ years of experience with CI-CD tools for containerized deployments and cloud architecture.
- 7+ years of experience with Microservices or SOA architecture.
- Experience with RESTful APIs and authorization mechanisms such as JWT and OAuth.
- Experience with Kafka, pub/sub, or other data-streaming frameworks.
- Proficiency with Git, GitHub, and Agile development methodologies.
- Knowledge of Azure, AWS, or similar cloud platforms, with a preference for Azure.
Preferred Skills
- Experience with Docker, Kubernetes, Jenkins Pipeline, or AWS Cloud Formation.
- Knowledge of PostgreSQL or MongoDB query optimization.
- Familiarity with frontend frameworks including React, Angular, or Vue.js.