Software Development Engineer II
The team uses a wide variety of technologies, frameworks, and tools every day, as we are a full stack team. We mainly code in Java, but there are some components written in Node.js, React.js, Scala, and SQL/HQL.
We love people that are familiar with the following technologies: Docker, ECS, AWS Cloudwatch, Amazon SNS, Amazon S3, PMML, Openscoring, TensorFlow, Mongo DB, Splunk, Graphite, Springboot, and Jquery.
- Write scalable, performant, maintainable, resilient micro services in Java or Scala to support our expanding ecosystem of data scientist-facing and supplier-facing services and tools.
- Listening to our partners and customers, gather technical requirements and participate in translating them into documented and reviewed software designs.
- Work collaboratively with our data science teams to build data management tools (with data in Redis, Hive/Hue, Kafka, etc) and pipeline for data processing.
- Improve project quality via good coding/testing practices including writing unit and functional tests in JUnit & JGiven and performance tests using Gatling.
- Contribute to the design process for various features by actively participating in group technology reviews to critique your and other team member's work.
- Support team's services and tools using a DevOps mentality including building monitoring tools and diagnosing issues based on reported bugs.
We are looking for user-focused full-stack developers to assist in building our data scientist-facing and supplier-facing services and tools.
You should have:
- Excellent ability building Java-based micro services using Spring Boot, Tomcat, or Jetty.
- Experience managing data in Redis and other data warehouse tools (Hive, Athena, Hue, etc).
- A basic understanding of data storage in MongoDB or other NoSQL data store.
- Experience with automated testing in Java or Scala, including unit, functional.
- Experience with performance testing using Gatling or JMeter.
- Experience with Agile methodologies