6+ years of experience in production environments as an 'Arranger' or 'Builder/Enhancer' of scalable distributed systems.
Strong understanding of distributed systems concepts, including multi-threading and concurrency.
2+ years of experience developing customer-facing APIs and frameworks.
Proficient in writing concurrent code using languages like Go or Java at an advanced skill level.
Familiarity with open-source contributions and collaborative coding practices.
Responsibilities
Design and implement core backend service features for Nexus.
Ensure comprehensive test coverage for unit, integration, and performance in your feature area.
Document design choices and operational knowledge for successful deployment.
Provide service level logs and metrics for cloud service setup.
Create alerts, dashboards, and runbooks for production environments.
Benefits
Fully remote work environment with flexibility in location.
Open-source culture encouraging public contributions and collaboration.
Focus on high-quality code with a commitment to reliability.
Minimal meeting culture, prioritizing written communication for efficiency.
Full Job Description
Summary
As a Senior Engineer, you will get the chance to design, build, and maintain significant portions of our backend functionality for highly scalable, multi-tenant Nexus services (Our durable execution framework for orchestrating work across team and application boundaries for improved modularity, security, debugging, and fault isolation). Examples of the key distributed systems components you'll own include durable execution, async processing and expand our ability to invoke workflows through more industry standard protocols. Working in the highly collaborative Compute and Artificial Intelligence org, we'll look to build a new enterprise offering that involves both on-premise and dedicated cloud offerings.
To learn more about Nexus and how our customers use Nexus here - [new window opens] What You'll Do
Design and implement core backend service features for Nexus.
Provide appropriate test coverage for unit, integration, and performance for your feature ownership area.
Clearly document design choices and operational knowledge to successfully deploy and run service with those features.
Provide appropriate service level logs and metrics to make features operational for cloud service setup.
Provide appropriate alerts, dashboards, and runbooks for production.
What You Won't Do
Work in an office (unless you want to, but you'd be by yourself). Temporal is a fully-remote company.
Commit code that's poorly-tested or works "most of the time". Temporal aspires to be "Reliable as Gravity", and we expect your code to be the same.
Work behind closed doors. The SDKs are open source-that means PRs and comments are open to the public, too. See Temporal Git here.
Sit in meetings all day. We mostly communicate in writing, and use meetings mainly for status updates and thorny issues that need input from the whole group.
What You'll Bring
At least 6 years of experience in a production environment as an "Arranger" and/or "Builder/Enhancer" of highly scalable distributed systems. see HERE for more info re: "Arranger" and/or "Builder/Enhancer"
Solid computer science fundamentals in distributed systems concepts including multi-threading and concurrency.
2+ years experience developing customer facing APIs and Frameworks
Experience writing concurrent code in production with languages like Go or Java or other applicable languages with skill level as "high end of Intermediate" and/or "Advanced" or "Expert" levels. see HERE for more info re: "high end of Intermediate" and/or "Advanced" or "Expert levels"