Twitter - Senior Back-End Engineer (TweetDeck)

Who are we?

You'd be joining a team made up of talented people from all over the world, and from many different backgrounds.

We work together to build TweetDeck, the product for professionals and power users who do Twitter at scale.

We care about making work happy and productive for everyone, with the option to work from home when you need, wellness benefits, regular #NoMeetingThursdays, #FocusTuesdays, and 6 months parental leave. See our team member Andreas's Moment for more insight into team lunches, fun and lego building.

We love sharing knowledge and ideas. Within TweetDeck we have fortnightly learning seminars. We regularly get together with the other Twitter UK engineering teams for tech talks. And there are many study groups you can join, the most recent being for Machine Learning. 

What we’re excited about

You'll be joining TweetDeck at an exciting time, both technically and for our users.

We're currently exploring some brand new projects, which will mean building lots of cool new features.

We're also the first team to adopt Twitter's new GraphQL API – an exciting opportunity to explore big workflow improvements for the whole team, as well as getting to work on services that will transform Twitter engineering.

Community love

There’ll be plenty of opportunities to get involved in the tech community, if that’s your thing. We regularly teach Code First: Girls courses, coding workshops for high school students, and recently hosted Codebar’s annual conference and bi-monthly blackgirl.tech events. There is a Hacks/Hackers meetup for journalists (big TweetDeck users) and engineers at Twitter UK every month. And we have company-wide #TwitterForGood days.

The tech stack

The codebase is really exciting. Tweets in columns sounds simple, right? But there is a whole world of complexity and logic to providing tweets and interactions in realtime. You'll constantly stumble into new areas and have opportunities to discover other parts of the Twitter codebase. There will always be something new to learn.

We have a microservices architecture, with a modern and clean backend codebase since our recent move from Python to Scala. We aim to write code that’s clear and efficient and make best use of Scala’s object oriented functional mix. You’re not expected to know Scala before you join (most of us didn’t), but to be keen to learn – our team includes experience with everything from Java, to Perl, to Clojure.

We use Finatra as a framework for creating fast and testable HTTP services, which itself builds on the FinagleRPC and TwitterServer.

We’ve also been introducing GraphQL to support our real-time delivery of events.

On the analytics side, we use Scalding and Hadoop for learning about users and their behaviour.

Who are you?

First off, you don’t need a Computer Science degree to apply. We are keen to welcome applicants from all backgrounds. In fact, many people on the team don't have a CS degree or any degree for that matter. Our take-home code samples are real world and practical, and require the kind of problem solving that you will use on the job.

Below are some of the things we like to see in our applicants. The list might seem exhaustive, but don’t let it scare you off. If you’re passionate about services at scale and Twitter, and you think you might be who we're looking for, we encourage you to apply.

 

 What we’re looking for:

 

  • You care about helping users succeed in their goals through the features you build

  • You take a collaborative approach to working closely with, and incorporating feedback from, product, design and engineering

  • You've mentored others, whether in your work or outside of it, and are keen to support colleagues to learn and grow

  • You can work both autonomously and as part of a team, including collaborating closely with engineers in remote offices

  • You are interested in challenges at scale

  • You have shown ability to learn new programming languages, and/or have prior experience in a JVM-based and/or functional programming language

  • You’re constructive and supportive in code reviews

  • You’re disciplined about testing, quality assurance and writing clear, helpful documentation

  • You are able to be self-directed and drive features and systems from technical design through to production

  • You can build relationships with other teams and leverage opportunities to collaborate

  • You’re willing to be periodically part of out-of-hours on-call schedule; we’re flexible if you need to change times - it’s about collectively supporting and owning services we create

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.

EP Advisory