Java Engineer III
Engineer 3 - Software will work as a mid-senior level member of a software development team, responsible for the development, implementation and post deployment support of enterprise applications. In this role, the Engineer 3 - Software will work under the supervision of Technical Team lead or Senior Engineer. As a member of the team, the Engineer 3 - Software will participate in all phases of the Software Development Life Cycle (SDLC).
Technical Skills and Desired Proficiency:
(a) Java, Spring/Struts and iBATIS - Advanced-Expert
(e) Eclipse IDE - Advanced
(f) Junit- Intermediate SVN - Intermediate
(g) Build Automation Scripts using ANT - Intermediate - Advanced
(h) Maven on Gradle - Intermediate
What other types of Knowledge/Skills/Experience are preferred for the job?
(a) Hands-on programming knowledge of PL/SQL
(b) Experience with any SQL Tools: Oracle SQL Developer, Toad, or PL/SQL Developer
(c) Experience implementing system solutions in the Private health insurance industry.
(d) Knowledge of policy governing the Health and Human services programs such as Medicaid, CHIP, Long Term Services and Child Support.
(e) Experience working on state MMIS systems or implementing system solutions to support Integrated Eligibility (Medicaid. CHIP, TANF, SNAP, LTSS)
SKILLS & RESPONSIBILITIES:
- Advanced proficiency in Object Oriented (OO) Programming: Advanced skill in OO programming languages, with advanced ability in at least one OO language (preferably Java) is required.
- Advanced understanding in complex concepts of data organization: Advanced skills with RDBMS.
- Advanced understanding of SDLC such as Waterfall, AGILE, SCRUM etc.
- Advanced knowledge of information systems design principles and current/emerging trends in this field is required.
- Knowledge of policies, standards, procedures, and techniques used for application development is required.
- Strong ability to think logically and structurally, and have attention to detail is required.
- Strong Analytical skills and strong Communications skills, both written (with emphasis on technical documentation) and verbal, are required.
- Ability to work effortlessly and efficiently in high performing and self-governing teams.
- Ability to work independently on most size projects.
- Architect moderate to advanced system solutions, solicit and incorporate inputs from technical and operational teams and document for consumption of development and testing teams.
- Develop advanced software programs, with clear and succinct code documentation, that meet the written and oral functional requirements provided by customer.
- Fix defects in the home grown applications or third party software according to written and oral specifications.
- Create scripts to create and modify database objects.
- Work on deliverables, such data analysis, client report requests etc. with minimal inputs and guidance from Development Manager or senior developers.
- Actively participate and contribute in SDLC activities such as solution design, work effort estimation, assisting peers with technical challenges and code reviews.
- Works to understand the business processes and develop unit and integration test scenarios in accordance with system requirements and business process changes. Provide expert advice to the testing am to create test data manually and/or systematically to test software programs.
- Perform production support activities such as monitor system processes, evaluate the outcome of system processes, work through system exceptions, and create processes to monitor and report on the overall system health.
- Work independently to understand the assigned work, deliver on agreed upon dates and raise issues/risks in a timely manner in case of risk to deliverables.
- Create/modify artifacts and deliverables expected from the SDLC and change management process such as project charter, proposed solution documents etc.
- Follow the SDLC and change management processes adopted by the organization. Participate in change management meetings to provide impact assessment of requested change, update the defect tracking system with most up to date information and perform release management tasks as assigned by Development manager.
- Bachelor's Degree in Software Engineering, Computer Science or a related field and 3-5 years relevant experience. OR Master's Degree in Computer Science or a related field and 2 to 5 years of relevant experience