Senior Software Engineer, Backend & Cloud
New York City
Our client is on a mission to accelerate and transform the diagnosis and treatment of cancer. Our client is creating a digital platform for pathologists to transform their workflow and is developing a new class of computational diagnostics positioned to drive the future of pathology.
Our client recently raised $70M in series B investment to continue their mission and expand their impact.
We’re seeking a creative Senior Software Engineer, Cloud & Distributed Computing who enjoys implementing large-scale systems to join our Engineering Team. In this role you will collaborate with our world-class team focusing on product development, machine learning and pathology to distribute and execute a variety of computationally expensive algorithms in the cloud at a large scale while optimizing for speed and cost.
This is an extraordinary opportunity to be part of a high-performing team and to pursue a life-changing mission with unique technical challenges!
Our team is working remotely right now. However once we return to working from the office this position will be required to be based in NYC.
Responsibilities
· Architect, develop and maintain a scalable, reliable and high-performance platform to execute algorithms in the cloud
· Efficiently schedule and distribute various heterogenous jobs and AI algorithms within a distributed ecosystem, while optimizing for speed and cost
· Design a system that can handle very large images as input data while optimizing storage space
· Maintain and enhance current products and services to best serve our customers
· Implement and test new features while applying software development best practices
· Work within a cross-disciplinary agile team
Minimum qualifications
· Bachelor’s degree in computer science or a related field, or equivalent years of experience.
· 5+ years of industry experience as a software engineer developing distributed computing architectures.
· You are authorized to work in the US.
Requirements
· Extensive experience architecting scalable systems for distributed computing in the cloud
· Experience with Amazon Web Services (AWS)
· Experience with message queuing systems (e.g. SQS, ActiveMQ, etc.)
· Experience with Event Driven Design
· Experience with data pipelines and executing workflows
· Experience with Python, or equivalent
· Experience with Docker containers
· Experience with Kubernetes
· Experience with Unix operating systems
· Experience with continuous integration and continuous deployment (CI/CD)
· Experience with modern product development practices, including software testing (e.g. unit testing, regression testing).
Nice to have
· Experience with Domain Driven Design