Senior Java Developer
Summary
Senior backend engineer building and maintaining Java applications on the Spring stack — designing RESTful microservices, working with SQL/NoSQL databases, messaging (Kafka/RabbitMQ), and cloud deployment with Docker/Kubernetes, CI/CD, and test automation.
Responsibilities
- Create solutions which delight customers, abstracting complexity
- Design, build, and maintain efficient, reusable, and reliable code
- Ensure the best possible performance, quality, and responsiveness of the applications
- Identify bottlenecks and bugs, and devise solutions to these problems
- Ensure excellent code quality, and automation.
- Solve high severity production issues on priority
Skills
- Solid experience with Spring Boot, Spring MVC, Spring Data, and dependency injection.
- Experience designing and consuming RESTful APIs.
- Knowledge of SQL and relational databases (MySQL, PostgreSQL, Oracle, etc.).
- Familiarity with NoSQL stores (MongoDB, Redis) is a plus.
- Experience with build tools such as Maven or Gradle.
- Understanding of microservices architecture and distributed systems.
- Familiarity with logging, monitoring, and profiling tools.
- Working knowledge of Git and CI/CD pipelines.
- Knowledge of concurrency patterns in Java
- Experience with databases, cache and messaging.
- Experience with Spring Security or OAuth2.
- Exposure to Kafka, RabbitMQ, or other messaging systems.
- Cloud experience (AWS, Azure, GCP).
- Docker, Kubernetes, and container orchestration basics.
- Test automation using JUnit, Mockito, or similar frameworks.
- Knowledge of API gateways and service mesh architectures.
- Understanding fundamental design principles behind a scalable application
- Basic understanding of the class loading mechanism in Java
- Creating database schemas that represent and support business processes
- Implementing automated testing platforms and unit tests
- Proficient understanding of code versioning tools, such as Git
- Familiarity with build tools such as Github, Maven and Gradle
- Familiarity with continuous integration
- API-first development, CI/CD automation, and DevSecOps
What you have
- At least 6 years of Strong experience in building apps, preferably on Java - Spring stack
- Experience working on cloud-based SaaS/PaaS products
- Understanding of design patterns, algorithms and data structures
- Articulation of a solution and its benefits / shortcoming with alternatives
- Ability to transition between programming languages and tool sets