The Tor Project is looking for a Lead Automation Engineer!

Note: we've filled this position for now, but we hope to be looking for another automation person in the future.

The Tor Project seeks to deploy nightly builds and continuous integration for as many of its key software components and platform combinations as possible. Your job would be to build and deploy the initial functional versions of a wide range of testing frameworks and continuous integration systems.

This is a contract position. Candidates are expected to be capable of taking the lead in selecting, deploying, and maintaining multiple automation systems in several different programming languages. Candidates should also be capable of reproducing bugs and writing new reproduction test cases for one or more of the testing frameworks. Eventually, we hope to add additional staff to assist in this project, but to start, you will be expected to prioritize your own work such that the most important tasks get attention first, without letting any specific core component starve for attention.

All candidates must:

  • Have experience programming in multiple languages, including Java, python/ruby, bash scripting, and Javascript. You must also have experience working with testing/automation frameworks on multiple platforms.
  • Be comfortable and experienced with repeatedly diving into new, unfamiliar automation framework codebases, looking for ways to alter and augment their functionality in specific, goal-oriented ways. This includes hacking testing/automation/build software written in languages you might not know (yet).
  • Be experienced with writing useful tests for one or more testing frameworks, and with using code coverage tools and bug count statistics to determine testing effectiveness.
  • Be capable of writing new tests to trigger and reproduce arbitrary bugs found in the wild.
  • Be comfortable and experienced justifying and documenting technical decisions related to infrastructure choice and its use for a public, world-wide technical audience.
  • Be comfortable and effective working remotely.
  • Be comfortable and experienced with interacting with users and other developers online. Have thick enough skin to survive occasional trolling from either group.
  • Be comfortable with transparency: as a non-profit, everything we do is in public, including your name (or at least your business name) and pay rate.

An ideal candidate would also possess several of the following skills:

  • Have experience building and packaging multiple types of Open Source software, including diagnosing and fixing build issues due to cross-compilation issues or poor toolchain support.
  • Already be familiar with Jenkins or a similar Open Source nightly build and continuous integration framework (such as Hudson, Tinderbox, etc).
  • Already be familiar with Selenium and/or one or more Mozilla Automation Frameworks.
  • Be at least passingly familiar with web technologies and how the web works, especially the same-origin model and web tracking.
  • Be experienced with fuzzing techniques and ideas; extra bonus points for experience writing tests in one or more fuzzing frameworks.
  • Be at least passingly familiar with general Internet networking, including TCP/IP, proxies, and traffic manipulation.
  • Have experience with Open Source software development, including working with distributed teams across different time-zones containing employees and volunteers of differing skill levels over multiple mediums, including email, instant messaging, and IRC.
  • Have basic familiarity with distributed version control systems.
  • Genuinely be excited about Tor and our values.

How to apply:

  • Link to a sample of code you've written in the past that you're allowed to show us.
  • Provide a CV explaining your background, experience, skills, and other relevant qualifications.
  • List some people who can tell us more about you: these references could be employers or coworkers, open source projects, etc.
  • Email the above to jobs at torproject.org, specifying the "Lead Automation Engineer" position.

About the company:
The Tor Project is a US 501(c)(3) non-profit dedicated to research, development, and education about online anonymity and privacy. The Tor network's 3000 volunteer relays carry 16 Gbps for upwards of half a million daily users, including ordinary citizens who want protection from identity theft and prying corporations, corporations who want to look at a competitor's website in private, people around the world whose Internet connections are censored, and even governments and law enforcement. Tor has a staff of 30 paid developers, researchers, and advocates, plus many dozen volunteers who help out on a daily basis. Tor is funded in part by government research and development grants, and in part by individual and corporate donations.

Tor Tip

Tor is written for and supported by people like you. Donate today!