Summary:
The Mid level Java Software Engineer is a key member of a software development team. They are responsible for developing, implementing, and supporting enterprise applications that cater to over 8 million consumers. The Mid level Software Engineer contributes to the Agile Release Train, alongside the Scrum Master, Product Owner, system analysts and test engineers, to deliver functional features every 12 weeks (one Program Increment). The ideal candidate should possess advanced technical knowledge in high-performing cloud-native systems and the ability to simplify complex information into understandable business terms.
Top Skills Required for this Position:
- Java (more than 5 years)
- SQL (more than 3 years)
- Hibernate / JPA / MyBATIS (3 years)
Required Skills and Experience:
- Ability to work effortlessly and efficiently in high performing and self-governing teams.
- Ability to work independently on any size of project.
- Java - Minimum 5 years of experience
- Spring / Spring Boot- Minimum 4 years of experience
- Hibernate / JPA / iBATIS - Minimum 3 years of experience
- JavaScript and JavaScript Frameworks (ReactJS / AngularJS / Bootstrap / jQuery etc.) - Minimum 3 years of experience
- HTML/CSS - Minimum 3 years of experience
- Web Services (REST or SOAP) - Minimum 3 years of experience
- SQL - Minimum 5 years of experience
- Eclipse IDE - Minimum 5 years of experience
- Maven or Gradle - Minimum 3 years of experience
- Junit - Minimum 1 year of experience
- Demonstrated knowledge of working with AWS services is required, supported by a relevant certification.
- Expert proficiency in Object Oriented (OO) Programming: Must have strong knowledge of OO programming languages, with expert skills in at least one, preferably Java.
- Must have an expert understanding of Design and System Thinking.
- The ideal candidate will pursue excellence through Agile and DevOps processes.
- Ability to challenge the status quo and explore potential improvement opportunities through proof-of-concept use cases and make recommendations to the management team.
- The ability to articulate proposed solutions in business-friendly language is important.
Candidates should maintain a growth mindset and stay updated with emerging technology trends. They should be willing to share their learning with team members in biweekly webinars.
Educational Requirements and/or Certifications:
Bachelors degree in computer engineering, Computer Science, or a related field with 6 years of relevant experience, or masters degree in computer engineering, Computer Science, or a related field with 4 years of relevant experience, or a PhD Computer Engineering, Computer Science, or a related field with 3 years of experience; or equivalent experience.
Responsibilities / Tasks:
- Contribute to the development of advanced case management solutions, taking inputs from the Agile team and business sponsors.
- Participate actively in the SAFe processes which include PI Planning, daily standups, iteration reviews, and Innovation & Planning.
- Pivot and adjust as necessary based on feedback from business sponsors every two weeks.
- Deliver new features to operational teams every 12 weeks and participate in the system demonstration.
- Collaborate with the program management team, DevOps team, and other support teams to release new features to the production environment, adhering to an established change management process.
- Execute database design and develop SQL scripts for creating and modifying database objects with minimal supervision.
- Handle deliverables like data analysis, coding, and client report requests independently.
- Monitor system performance and suggest improvements.
- Address defects in the JIRA backlog and follow the established change management process to apply these changes to the production system.
- Collaborate with the product management team to define and collect relevant data for capturing the ROI of major system enhancements.
- Gain the necessary business knowledge and stay updated with emerging technologies.