Staff Software Engineer, Backend

Machinify, Inc.
Summary
Join Machinify, a leading provider of AI-powered healthcare software, as a Staff Backend Engineer. This critical role involves designing and building scalable, reliable backend systems for our expanding AI platform. You will leverage your expertise in application architecture and design, contributing to the development and maintenance of Java and Scala-based systems, distributed databases, and machine learning frameworks. The ideal candidate possesses strong experience in distributed systems, microservices, and database technologies, along with proven leadership skills. This position offers the opportunity to work on cutting-edge AI products and collaborate with a high-performing engineering team. Machinify provides a flexible, remote-work environment with competitive compensation and benefits.
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)
Responsibilities
- 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
Preferred Qualifications
- System programming experience with network stack and file-system
- Familiarity with Kubernetes for container orchestration
- Familiarity with cloud platforms (e.g., AWS)
- Experience with CI/CD tools and practices
- Proficiency with version control systems (e.g., Git)
- Strong critical thinking problem-solving skills and attention to detail
- Comfort when navigating ambiguity
- Excellent communication and teamwork abilities
- Ability to work independently and manage time effectively
- Proactive attitude and a joy for learning new technologies
Benefits
- Work from anywhere in the US!
- Flexible and trusting environment where youโll feel empowered to do your best work
- Unlimited PTO
- Full Medical/Dental/Vision for employees & their families w/ 100% premium coverage options!
- Competitive salary, equity, 401(k) sponsorship
- Learning and Development reimbursement policy