Senior Software Engineer (Java)
- Design solutions for defined functional and non-functional requirements (technologies, patterns, and frameworks ).
- Write and review design documents detailing the architecture, framework, and high-level design of the application.
- Create, understand, and validate work breakdown structures and estimated efforts for given modules/tasks, and justify them.
- Perform code reviews and provide solutions to the junior team members.
- Collaborate with team/tech leads to establish requirements and overall design.
- Work with project managers on project schedules while providing accurate development estimates and identifying/mitigating project risks.
Requirements
- Strong programming background with a passion for coding and problem-solving.
- Expertise in object-oriented design (OOD) and design patterns.
- Proficiency in Java, Spring MVC, Hibernate/JPA, and REST API development.
- Familiarity with front-end frameworks like Angular or React is a plus.
- Strong understanding of both relational (e.g., PostgreSQL, MySQL) and NoSQL databases (e.g., MongoDB).
- Proficiency with version control systems (e.g., Git), continuous integration tools (e.g., Jenkins), and Unix/Linux environments.
- Knowledge of cloud platforms such as AWS
- Strong problem-solving and decision-making skills.
- Excellent communication