We’re looking for an Infrastructure Software Engineer with experience and or a strong passion for Site Reliability/Operability. You will work with a world-class team of engineers on deploying and operating existing systems, and building new ones for problems that are unique to our problem space. We are looking for big thinkers and innovators to take on this problem space and deliver world class solutions.
The Core Storage and Infrastructure team builds the foundational storage layer (MySql, DynamoDB, Redis, Elastic Search, Zookeeper) and core infrastructure (our async jobs framework, load balancers, and distributed tracing solution) to support our web and mobile applications, as well as our robust API. We build and operate the software that enables Asana’s scalability, performance, and robustness. We manage a wide scope, all the way from provisioning for our web servers and database instances to re-architecting, building, and operating high scale backend services to abstract away our key-value storage. Each day, we combine industry best-practices and innovation to support Asana. There is plenty of unsolved and unique problems to work on in the team.
What you’ll achieve
You will have a unique opportunity to design, develop, and operate services that power Asana. You’ll work on cross-functional projects to help define the future of core Infrastructure for Asana, how we architect and operate critical services at scale. You will also enable engineers roll-out new features and services safely - through tooling, best practices, and production readiness reviews. You will work on projects that impacts all the engineering teams at Asana. You will also experience the internals and best practices of running applications in the cloud (AWS) and all the state-of-the-art tooling around it.
Day to day you will:
- Analyze problems, consider alternative solutions/trade-offs, and make key technical implementation decisions to help guide engineering vision at Asana
- Collaborate with other infrastructure teams to define our service oriented architecture
- Develop frameworks, services, and the necessary tooling to power our application and enable other engineering teams
- Evangelize good code and solid engineering and operability practices
- Support design reviews, communicate constraints, and help engineers make the right trade-offs
- Develop high quality code and keep our services up and running by being part of our on-call rotation and investigate and resolve production problems
- Have expertise in programming and computer science, and have a strong interest in distributed systems
- 5+ years writing and shipping production code
- 2+ years experience in operating highly available production services
- Are looking for a blameless and open environment where you and your teammates empower one another moving towards a shared goal
- Are willing and able to collaborate with different roles and functions across Asana with a keen sense of empathy
- You’re a fast learner and can contribute from day one
Nice to have
- Experience with operating high scale database instances, especially on AWS
- Good understanding of datastores, SQL and noSQL
- Familiarity with AWS Services (IAM, DynamoDB, RDS, EKS, etc.)
- Strong knowledge and experience of SRE principles (and have opinions about)
- Experience building scalable, highly-available service oriented architectures