Let’s Connect Today!

NextGen Person

Senior Java Developer in Orlando, FL at NextGen

Date Posted: 4/23/2018

Job Snapshot

  • Employee Type:
  • Location:
    Orlando, FL
  • Job Type:
  • Experience:
    Not Specified
  • Date Posted:

Job Description

Job Description Summary
As part of our initiative to modernize our software engineering practices, the Sr. Software Engineer will be responsible for software design, development, and quality testing for one or more scrum teams developing REST-based entity services. Development is heavily focused on iterative development and incremental release of product features, using agile methods and automation (DevOps and integration testing). The ability to work in a changing, often-ambiguous environment is essential. Creativity and collaboration are foundational skills.
Job Description
The Sr. Software Engineer will lead development for a platform team focused on building out REST-based entity services for our next-generation service architecture. The entity services will align with our business entities, with multiple related services owned by a single platform team, along with the platform data store(s). Services are deployed to an internal cloud (Pivotal Cloud Foundry). Development is done using agile methods (scrum mostly) and modern software development tools and techniques, including continuous integration and deployment (CI/CD) with GitHub, Jenkins, and Artifactory, and test automation using Cucumber and JMeter.
As a lead engineer, you will work with technical managers, architects, and subject matter experts to define and refine requirements and API specifications; perform analyses of existing business services and data stores; create detailed designs; write code and unit tests; help the team achieve consistent and quality code through code reviews and code refactoring; coordinate with QA engineers to define test cases and ensure they are satisfied; assess and use external systems such as NoSQL databases; and act as a mentor to others on the team.
A critical role will be to interface with technical and non-technical people in other areas to understand use cases and deliver services that meet the needs of new applications. In addition, initially the new REST-based entity services are built atop existing systems, so understanding those systems and their data models - and how that data maps to the API data models - will be crucial.
The successful candidate must be competent to work at the highest technical level of all phases of service definition and development, and be capable of leading teams in these efforts.

Required Skills
The successful candidate will have experience and expertise in the following areas:
• Java development (at last 5 years of experience)
• REST-based services, or other Web services
• Design (APIs, data models, sequence diagrams, class diagrams)
• Automated integration tests, preferably using an external automation tool
• Relational databases, including JDBC and SQL
• NoSQL databases such as CouchDB or MongoDB would be a plus
• Accessing data on mainframes or through RPC services would be useful
• Sprint Boot and Spring Security would be plus; OAuth would be a plus also
• Cloud/VM infrastructure and technologies (PCF preferred)
• Agile methodology, using Scrum, Kanban, or similar techniques
• DevOps and continuous integration (CI) using Jenkins and Maven
• Modern IDEs like Eclipse and version control systems like GitHub
• Lead developer on scrum team responsible for the design and development of services implementing REST-based APIs.
• Work with and mentor other developers on the team, including pair programming and code reviews.
• Work with QA team and developers to define and implement test strategy, and to ensure quality.
• Work with scrum master to break stories into tasks and provide estimates, and with the team to ensure the development efforts are focused and aligned with stories.
• Work with technical manager(s) and scrum master in communicating status, figuring out sprints and milestones, and aligning sprints to business needs.
• Work with contractors in delivering services.
• Work with developers, business analysts, scrum masters, and others who are working at a remote location, or virtually.
• Partner with architects to set direction for maturing use of/retiring/adding technology components in our environment.
• Provide technical guidance to consumers of entity services.
• Lead efforts to resolve urgent issues with production services.
• Lead efforts to develop standard practices, components, guidelines for use of complex technology components.
Job Requirements
• Bachelor's degree in Computer Science or Engineering, or equivalent work experience
• 5+ years relevant experience, preferably 2-3 years at a similar healthcare-related company; less experience required with Master's degree