Senior Software Engineer (C++) - Cache
- Full-time
Company Description
Who We Are
Twitter’s globally distributed, real-time communications network generates trillions of events and petabytes of data per day. The Realtime storage Group provides the storage layer that enables products and services at Twitter to be fast, highly scalable, and always available. We own Nighthawk and Twemcache, which are caching solutions built on-top of Redis and Memcache. To handle Twitter’s scale, we build world-class distributed storage solutions that help serve critical Twitter services with low latency across cloud and on-premise environments. We run thousands of database nodes that process hundreds of millions of requests per second!
Job Description
What You’ll do
Lead the design and delivery of initiatives for our Caching solutions to enable our customers to operate seamlessly in a hybrid cloud and to operate it at scale reliably.
Develop new cloud integrations and capabilities that’ll allow for easy movement of data between cloud datastores and the database service.
Help us containerize Twitter scale cache service which will be one of the largest stateful workloads to run on Kubernetes in a datacenter hosted environment.
Lead active collaboration with partner teams like Messaging, Compliance, Security, Kubernetes and our customers to build and deliver features and integrations that’ll allow us to store and retrieve data that is compliant to Privacy and Data Protection standards.
Dive into performance issues and work with customers and deliver solutions to cater to customers’ latency, availability and data durability requirements.
Demonstrate ownership of the services you build by going oncall and lead initiatives to improve service reliability.
Lead and drive incident responses and recovery with your peers. Review and contribute to incident postmortems and hold a high bar for the same.
Work in a collaborative environment and uplevel your peers by doing mentoring, code and design reviews.
Be open to develop new skills and learn on the job as we navigate new technology spaces.
Ground your decisions with data and reasoning and adapt to new information to make informed choices.
Qualifications
B.S.+ in Computer Science or related field (or equivalent experience)
5+ years of experience in software engineering
Experience with building or operating distributed systems, and asynchronous programming
Strong computer science fundamentals, algorithms, and data structures background
Model of software engineering best practices, including agile development, unit testing, code reviews, design documentation, debugging, and troubleshooting
An understanding of continuous integration and a strong drive toward automation.
Proficient in multi-threading, scaling, concurrency, caching, queuing and RPC
A strong reliability first mindset
Previous experience with C++ or Rust is a plus
Previous experience with storage systems and Kubernetes is a plus
Previous experience with cloud server environments such as Amazon Web Services (AWS) and/or Google Cloud Platform (GCP) is a plus
Additional Information
Additional Information:
We are committed to an inclusive and diverse Twitter. Twitter is an equal opportunity employer. We do not discriminate based on race, ethnicity, colour, ancestry, national origin, religion, sex, sexual orientation, gender identity, age, disability, veteran status, genetic information, marital status or any other legally protected status.
San Francisco applicants: Pursuant to the San Francisco Fair Chance Ordinance, we will consider for employment qualified applicants with arrest and conviction records.