Who We Are
The Geo team maintains ownership of our notion of user’s locations, points of interest, and places at Twitter. We work with large datasets and high traffic systems while protecting our user’s privacy.
We aim to help Twitter deliver great content to each user by understanding the specific places they are interested in and identifying the right content associated with each place.
Our engineers build services and tools to automate and simplify our current Geo operations, including ingestion pipelines, location calculations, and other user-facing improvements to our Geo systems.
We care deeply about:
- Engineering excellence such as good design abstractions, API stability, best practices, and pragmatic testing
- The incremental approach to providing customer value
- Removing technical debt and finding ways to improve an existing system while managing risk
What You'll Do
We are looking for engineers who value good architecture and design, who love writing code, have a desire to learn new technologies, thrive on teamwork, and are committed to serving their customers and users.
Together with the team you will work on our extensive set of services and help us determine which ones to retire, which ones to re-architect and what new services we should build. You’ll work with the team and with our internal customers to identify new ways in which location data can be used to improve user experiences on Twitter and build new features to deliver this value.
Your responsibilities include:
- Shaping the direction of our services, tools, and product portfolio.
- Designing elegant abstractions, shareable libraries, and robust APIs.
- Actively looking for ways to improve the end-to-end experience for developers working on our systems.
- Integrating with Twitter’s serving, cloud and data infrastructure
- Working closely with engineers and stakeholders across the company.
- Mentoring other engineers in the broader organization we are part of
Who You Are
- You thrive on working in concert with other smart people, including from distributed offices.
- You communicate fluidly, at the level of your audience, and seek to understand and be understood.
- You have the ability to take on complex problems, learn quickly, iterate, and persist towards a great solution.
- You are adamant about studying customer needs and enabling their success through our products.
- You take pride in polishing and supporting our products.
- You value relentlessly improving an existing system
- You welcome feedback and are constantly looking for ways to improve yourself and grow your career and skills.
- BS, MS, or Ph.D. in Computer Science or equivalent work experience.
- 8+ years of hands-on software design and development experience
- 3+ years of experience with building distributed systems and microservices.
- You have a sound grasp on OOP concepts, data structures and algorithms.
- You have a disciplined approach to writing unit and integration tests.
- You are meticulous in software design life cycle best practices (design docs, code reviews, support, Sprint planning, Agile methodologies).
- You have a proven understanding of distributed computing architectures.
- You easily articulate complex concepts in writing and speech.
- You have a solid understanding of Java or Scala.
- You have operational knowledge of relational and non-relational databases (e.g. MySQL/Postgres and Cassandra/ElasticSearch).
Nice To Have
- Experience with location services and algorithms and geographic representations is a plus
- Experience with Machine Learning and/or Data Science
- Experience protecting user’s privacy
- Extensive MapReduce and/or Hadoop experience
Equal Opportunity Statement
We are committed to an inclusive and diverse Twitter. Twitter is an equal opportunity employer. We do not discriminate based on race, color, ethnicity, ancestry, national origin, religion, sex, gender, gender identity, gender expression, sexual orientation, age, disability, veteran status, genetic information, marital status, or any legally protected status.