Software Engineer (ML) - remote

Parenthetic
Posted 3 years ago  • Arlington, VA
Stack Overflow

We are seeking a talented software engineer to join our newly formed engineering team. An ideal candidate will have experience transitioning data science research into production-grade distributed systems. You will be responsible for developing the building blocks of our machine learning pipeline, implementing inference APIs, and building tools to support data science tasks. As this is a new team, we are looking for candidates who are willing to help grow the organization by taking on a range of responsibilities across the technical spectrum and are interested in learning new skills.

The position may require occasional on-site work in Northern Virginia for team and client meetings.

Responsibilities:

  • Build and deploy systems for serving machine learning models, training new models, and monitoring performance.
  • Develop tools and APIs for a scalable, distributed data processing pipeline.
  • Design and implement data access patterns for internal use by data scientists.
  • Provide input into architectural decision making, system roadmaps, and development milestones.
  • Institute MLOps principles in our software development practices and platform development.
  • Participate in the full software lifecycle, including maintaining and operating deployed software.

Work Experience and Skills:

  • BS or Master’s degree in computer science or a related field.
  • 3+ years of experience in the software engineering field (this is flexible depending on academic work).
  • Proficiency with Python development and working knowledge of at least one other language (Golang is a plus).
  • General understanding of data science tools and workflows and how to support them.
  • Experience with most of the following technologies/services: Docker, Kubernetes, gRPC, GCP, Prometheus, Kafka, Ray, Terraform, and common SQL/NoSQL databases.
  • Ability to write structured and documented code that is tested and maintainable.
  • Demonstrate organized thinking, with the ability to translate internal and external customer needs into development targets.
  • Aptitude for learning quickly and a willingness to take on a wide range of responsibilities.

Preferred Qualifications:

  • Experience developing software in Golang (especially microservice frameworks like Gin and/or CLI tools).
  • Proficiency developing CI/CD pipelines.
  • Ability to create dashboards and prototype webapps for demonstration purposes or limited internal use cases.
  • Prior work in the marketing/communications and/or defense sectors.
  • Ability to obtain and/or maintain a US government security clearance.