Principal Java Developer/Team Lead to serve as the senior developer on a team working to create the next generation back end data analytics platform designed to deliver high quality data analytics to our application development teams to be used in transforming the delivery of care for our customers. In the Team Lead role the candidate will develop all application architectures and coding practices for a team of approximately 8 developers in addition to working closely with the business stakeholders to translate business requirements into working designs. The next generation data platform is a platform being developed to intake data and process in real time implementing complex business rules designed by our industry leading medical expertise. This platform is currently in V1 development and is build using cutting edge tools and concepts.
Work with product owner in an agile development (scrum) team to refine product requirements, groom the backlog, and manage the tasks for the development team.
Design the functional architecture of a stream and batch data processing platform using tools such as Java, Spring, Spark, Kafka, Drools/jBPM, and ELK (Elasticsearch stack).
Develop coding standards for developers on the team adhering to industry best practices.
Develop processes for test driven development using tools such as jUnit and Sonar Qube.
Contribute as an active developer on the Scrum team by writing, testing, and deploying code to meet requirements of user stories in the active sprint at 50 percent of time.
Team is responsible for developing deployment tools and models to deploy the application to AWS cloud using automated tools such as Bamboo.
Deliver emergency support to production systems as a member of an on call rotation.
5+ years experience in a Senior Role on an Agile development team
Proven experience developing Java applications using DI frameworks, especially Spring
Profound insight of Java and JEE internals (Classloading, Memory Management, Transaction management etc.)
Expert understanding of Object Oriented analysis and design using common design patterns.
Experience as a leader in applying industry best practices in a Java application
Experience in test driven development
Past experience in using Java in a data analytics and/or data transformation application
Expert on using and configuring Java development tools, IDE, source control, automated testing, automated deployment
Experienced on Linux OS and tools
Experience with developing, deploying, and maintaining applications in AWS
Experience on streaming data design using Kafka and Kafka Streams
Experience with Apache Spark and/or Hadoop
Experience with Red Had Developer suite (jBPM/Drools)
Experience with ELK stack (Elasticsearch and Logstach)
Familiar with concepts around data transformation and data warehousing
Familiar with entire stack of Atlassian tools
Familiar with Medical industry data exchange formats (HL7 standard formats, CDA, FHIR)