About The Position

The role is part of a team building infrastructure and tools that help engineers work more productively and make software easier to create, build, and distribute. The team develops distributed backend services and tools for high-volume, functional, deterministic computations across various workloads. The engineer will develop distributed architectures, products, and services to accelerate software build, test, and deployment. The work involves combining the problem domain with established distributed-systems techniques to achieve high performance, reliability, and long-term maintainability. The engineer will analyze requirements, existing solutions, and available systems; make high-level backend architecture decisions that account for medium- and long-term goals; and collaborate with the team on implementation, testing, and operational mechanisms. The team describes its environment as supportive, respectful, and balanced, with challenging problems and opportunities to learn and develop.

Requirements

  • At least 5 years of experience working with large distributed software systems.
  • Experience with high-performance, strongly typed languages such as Swift, Rust, C++, or Scala.
  • Expertise in at least two of the following areas: caching, compilers, networking, or operating systems.
  • Ability to efficiently develop, debug, and support new technologies in a changing environment.
  • Experience with reliability or resilience engineering and service monitoring tools or techniques.
  • Bachelor's degree in computer science or a related field.
  • Excellent judgment and integrity, with the ability to make timely and sound decisions.

Nice To Haves

  • Master's or Ph.D. in computer science or a related field.
  • Familiarity with large infrastructure systems such as Kubernetes.
  • Familiarity with CI/CD solutions such as Jenkins.
  • Experience with incident management and response.

Responsibilities

  • Develop distributed architectures, products, and services to accelerate software build, test, and deployment.
  • Analyze problem requirements, existing solutions, and available systems.
  • Make high-level backend architecture decisions while considering medium- and long-term goals.
  • Implement architectural solutions collaboratively with the team.
  • Develop appropriate testing and operational mechanisms.
  • Drive constructive discussions of design points, learn from teammates, and use experience to advocate and teach others.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service