Software Engineer - C++ Mobile Clients (Magic Pony)


Who We Are

The Magic Pony team works on visual processing and optimisation using state-of-the-art computer vision and machine learning techniques. We are a diverse, inter-disciplinary team  working end-to-end from research to product integration. Our team have backgrounds ranging from video encoding expertise to theoretical machine learning research and low-level compute optimization on both mobile and server architectures. Our work involves turning our research outcomes into real-world products as well as optimising our technology for the real world.


What You’ll Do

You will be responsible for key components in the video player infrastructure used for the Twitter and Periscope apps, with an emphasis on improving the performance and reliability of video streaming. This will be achieved through reviewing design and development of our media libraries (written in C++ and mobile specific languages).


Who You Are

You are a passionate software engineer, who takes pride in your work and looking to solve hard technical problems and do so efficiently, rigorously and reliably. You will have:

  • Proficiency and understanding of C/C++
  • Passion for high quality performance code and an eye for detail
  • Experience in ideally both iOS and Android
  • Knowledge of core CS concepts such as data structures, algorithms, profiling and optimisation
  • A detailed approach to writing tests and quality assurance



  • Strong C++ skills
  • Previous experience developing mobile apps at scale
  • Ideally experience with media playback libraries on mobile (iOS or Android)
  • BS or MS in Computer Science or equivalent work experience
  • Experience in large-scale software engineering

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.

Engineering Hiring Process

Step 1

Once your application is received, a recruiter will reach out pending your qualifications are a match for the role.

Step 2

If your background is a match, you may have 1-2 technical phone interviews or be given the chance to provide a work sample depending on the role.

Step 3

If the phone interviews go well or your work sample is strong, the final step includes interviews with 5-6 people held onsite in our office.


By applying you expressly make the following representations and warranties and give your consents as described below:
Twitter, Inc. collects your personal data for the purposes of managing Twitter, Inc.’s recruitment related activities as well as for organizational planning purposes globally. Consequently, Twitter, Inc. may use your personal data in relation to the evaluation and selection of applicants including for example setting up and conducting interviews and tests, evaluating and assessing the results thereto and as is otherwise needed in the recruitment processes including the final recruitment. 
Twitter, Inc. does not disclose your personal data to unauthorized third parties. However, as a global corporation consisting of multiple affiliated companies in various countries, Twitter, Inc. has international sites and Twitter, Inc. uses resources located throughout the world. Twitter, Inc. may from time to time also use third parties to act on Twitter, Inc.’s behalf. You agree to the fact that to the extent necessary your personal data may be transferred and/or disclosed to any company within Twitter, Inc. group of companies as well as to third parties acting on Twitter, Inc.’s behalf, including also transfers to servers and databases outside the country where you provided Twitter, Inc. with your personal data. Such transfers may include for example transfers and/or disclosures outside the European Economic Area and in the United States of America.

Personal Information

This field is required.
This field is required.
This field is required.
This field is required.
Required field. PDFs only; max file size is 1MB.
Required field. PDFs only; max file size is 1MB.

Twitter cares about your privacy and protecting your data. Please click the privacy policy link and acknowledge you have read and understood how Twitter treats your privacy and your data.

Applicant Data - You have a choice. Can we keep your personal data for both the job you are applying for and any other Twitter jobs that we feel you may be a match for? If you choose yes we will retain your personal data for a period of twelve months to consider you for other job opportunities at Twitter.
Analytics - May we use personal data from your resume and application to analyze and improve the Twitter hiring experience.

Thank You


Thanks for applying!
Submission failed. Please make sure all fields are correctly formatted.

Don't see the right fit?

Check out other opportunities at Twitter.