Salary
💰 $210,000 - $245,000 per year
Tech Stack
ApacheAWSCloudDistributed SystemsJavaKafkaKubernetesMicroservicesPostgresScalaSparkSpringSQL
About the role
- Main contributor to the expansion of our platform which is used as the foundation for web services, data services and Machinify’s AI systems
- Develop and maintain scalable and distributed systems to keep them extensible, scalable, and secure
- Design, develop, and maintain robust Scala and Java based systems
- Implement and manage distributed PostgreSQL database systems to ensure optimal performance and data integrity
- Collaborate cross-functionally with other teams that define, design, and ship new features, with the understanding of how our systems must change to support AI platform expansion for future customer-focused deliverables
- Design and implement complex frameworks for applying machine learning techniques to large data volumes
- Deliver reliable and good-performing software
- Troubleshoot and resolve software and database issues in a timely manner.
- Participate in code reviews to maintain high code quality.
- Continuously explore new technologies and integrate them into projects to improve system performance and scalability
Requirements
- 10+ years of strong software development experience including depth of knowledge in distributed systems, microservices architecture, and database technologies.
- Proficiency in Java or Scala, with a strong understanding of object-oriented and functional programming principles and performance tuning
- Experience with Java frameworks such as Spring or Java EE.
- Skill in reading the source for complex software systems, understanding them, and improving them
- Experience with SQL, database schema design, and relational database development/administration (PostgreSQL preferred)
- Knowledge of distributed computing frameworks (e.g. Apache Spark, Apache Kafka,).
- A strong CS foundation in data structures and asynchronous programming
- BS or MS in Computer Science (or equivalent experience)