Summary
As a Software Engineer 2, you are 2-5 years post-graduation and want to grow and learn while impacting Temporal's scalable platform. You will design, build, and maintain meaningful portions of our backend functionality for highly scalable, multi-tenant services. Examples of the key distributed systems components you could own include Quotas, Throttling, Permissions, etc. Working in a highly collaborative team, we are building a new enterprise offering that will involve both on-premise and dedicated cloud offerings.
Career Growth and Mentorship
No matter where we are in our careers, mentorship is vital to continued growth and learning. If you join us, you will be paired up with a senior member of the team who is working on what you will work on, adding impact while learning. Everyone who works at Temporal and who joins Temporal learns - we have a wealth of info about Temporal in our internal "Temporal University". We also recognize that people learn differently and support your learning style - some people like to read code or watch videos or read. You will have the opportunity to contribute to the culture and direction of Temporal, and grow your scope of influence naturally as we scale.
What You'll Do
- Design and implement core backend service features.
- Provide appropriate test coverage unit, integration, and performance for feature ownership areas.
- Document design choices and operational knowledge to successfully deploy and run services at scale with those features.
- Provide appropriate service level logs and metrics to operationalize features for cloud service setup.
- Provide appropriate alerts, dashboards, and runbooks for production.
Experience You'll Gain
- Learn, contribute, and scale distributed engineering
- Learn a new way of developing software for complex distributed engineering problems
- Learn from and work side-by-side with best-in-class engineers from startups, Uber, Meta, Stripe, Twitter, Twilio, Google, AWS, Microsoft, Adobe, and others
What You'll Bring
- 2-5 years of backend engineering experience
- Solid computer science fundamentals in distributed systems concepts and first principles
- First-principles thinking and code design
- Knowledge of multi-threading and concurrency
- Experience with Go, Java, or other applicable languages
- Experience building systems with technologies like Kafka, Cassandra, MySQL, and Elasticsearch
- Experience building and running services on AWS and/or GCP
Nice to Have
- Bachelors Degree in Computer Science or closely related field (highly desired)
- Production experience with concurrency programming
- Experience with Go
- Exposure to Open Source Systems
- Exposure to workflow engines
Compensation
- The estimated pay range for this role is $130,000 - $170,000
- This role is eligible to participate in Temporal's equity plan