Job Description :
Job: IT Application Engineer - Senior
Duration: 12 month contract
Location: St.Louis, MO

General Summary:

- High-productivity developer in implementing REST-based microservices
- Understands and can work effectively with technologies used
- Works with team lead and manager to help drive overall vision in design and build of REST microservices
- Proficient in analysis and design, and effectively documents them
- Interprets and collaborates on the definition of requirements that drive the overall effort
- Designs, develops, tests, debugs, and documents software that meets functional and non-functional requirements
- Coordinates with stakeholders involved in initiatives the microservices will be used in
- Provides support and coordinates support for deployed products when there are issues
- Uses and promotes agile practices that are aligned with ESI practices
- Shares knowledge, coaches, mentors, and reviews code of team members
- Recommends alterations and enhancements to improve quality of products and/or procedures

Level Expectations:

- Expertise with server-side Java and SpringBoot
- Expertise designing and developing quality REST microservices that meet functional and non-functional requirements
- Expertise or significant experience with designing domain (aka entity) models to expose out microservices
- Significant experience with agile/scrum practices (able to play the role of scrum master when needed)
- Experience with asynchronous event-based processing (e.g. with Kafka)
- Experience with GraphQL is a plus
- Experience integrating with or migrating from mainframe systems is a plus
- Must possess excellent communication and relationship skills

Essential Functions (Details):
- Understands and can work effectively with technologies used - server-side Java, Spring Boot, REST, microservices, Kafka, Pivotal Cloud Foundry (PCF), NoSQL databases
- Designs, develops, tests, debugs, and documents REST microservices that expose domain models through REST (or GraphQL) APIs
- Designs, develops, tests, debugs, and documents data sync processors that synchronize data between microservice databases and backend databases
- Designs, interprets, and uses domain (aka entity) models, exposed from microservices
- Comfort interfacing with ESI director level management for technical briefings, status reports, etc.
- Coordinates with consumers of the microservices; engineers for existing backend systems that microservices have to synchronize data with; technical product owners from multiple areas; quality engineers; and others involved in the overall effort
- Work with IT and Business management to evaluate complex user requests, projects, and clarify objectives and functional requirements for new or modified microservices
- Determine feasibility, cost and time required, compatibility with current system, and system capabilities
- Provide level of effort and time estimates when required
- Prepare project documentation when needed
- Explain usage of microservices and domain models
- Work with solution and entity architects to define and implement application architecture
- Code new or modified computer programs into existing systems and test program effectiveness
- Evaluate error messages, modify codes and troubleshoot programming problems
- Develop detailed designs and specifications for microservices and associated utilities
- Perform analysis of systems issues or changes
- Write documentation describing program development, logic, coding, and corrections
- Participate in the development of user manuals and operating procedures
- Provide assistance to team members needing technical expertise or systems and / or programming knowledge

Additional Qualifications:
- 8+years of work experience in backend software development using Java or Kotlin
- 4+ years leading software development teams
- Advanced problem solving skills and the ability to work collaboratively with other departments to resolve complex issues with innovative solutions
- Ability to meet deadlines and balance multiple deadlines
- Demonstrated ability to prioritize work load and meet project deadlines
- Ability to adapt in a dynamic work environment and make independent decisions
- Extremely process and detail oriented
- Strong customer service focus
- Excellent oral and written communication skills
- Familiarity with health care industry very helpful
- Willingness to work a flexible schedule to accommodate project deadlines