Key Responsibilities
- Design, develop, and maintain high-quality Java-based enterprise applications within a multi-tier architecture.
- Develop scalable microservices and RESTful APIs using Java 11+ and related frameworks.
- Build responsive and user-friendly front-end applications using React or Angular.
- Collaborate with business stakeholders and global development teams to gather requirements, analyze business needs, and deliver technical solutions.
- Ensure code quality and adherence to enterprise architecture standards, integration patterns, and engineering best practices.
- Participate in architecture discussions, technical design reviews, and long-term platform planning initiatives.
- Build proof-of-concepts (POCs) to evaluate emerging technologies, frameworks, and implementation strategies.
- Troubleshoot, debug, and resolve production issues through effective root-cause analysis.
- Support all phases of the Software Development Life Cycle (SDLC), including requirement analysis, design, development, testing, deployment, and production support.
- Write clean, reusable, maintainable, and well-documented code.
- Develop and execute unit tests using JUnit and contribute to TDD/BDD practices.
- Work with CI/CD pipelines and version control systems to support streamlined deployments and development workflows.
- Contribute to continuous improvement initiatives, knowledge sharing, and engineering best practices within the team.
Required Skills & Qualifications
- Strong hands-on experience in Java 11+ and enterprise application development.
- Experience building microservices architectures and RESTful APIs.
- Proficiency with API documentation tools such as OpenAPI/Swagger.
- Experience with build tools like Maven or Gradle.
- Strong front-end development experience using React.js
- Expertise in relational databases such as PostgreSQL, MS SQL Server, or DB2.
- Strong SQL skills including query optimization, data modeling, and performance tuning.
- Hands-on experience with Kubernetes and containerized microservices environments.
- Experience with Python and Unix shell scripting (Bash).
- Strong understanding of unit testing frameworks such as JUnit.
- Familiarity with TDD/BDD methodologies is preferred.
- Experience using Git-based version control systems.
- Exposure to CI/CD tools and pipelines, preferably Jenkins.
- Comfortable working in Linux/Unix environments and using command-line tools.
- Experience working in Agile/Scrum development environments using tools like JIRA.