webwml/getinvolved/en/open-positions.wml

149 lines
6.4 KiB
Plaintext
Raw Normal View History

## translation metadata
# Revision: $Revision: 21511 $
# Translation-Priority: 4-optional
#include "head.wmi" TITLE="Tor Project: Open Positions" CHARSET="UTF-8"
<div id="content" class="clearfix">
<div id="breadcrumbs">
<a href="<page index>">Home &raquo; </a>
<a href="<page getinvolved/getinvolved>">Get Involved &raquo; </a>
<a href="<page getinvolved/open-positions>">Open Positions</a>
</div>
<div id="maincol">
<h2>Tor: Open Positions</h2>
<hr />
<p>Tor is hiring! We're looking for self-motivated individuals who are
able to work independently and want to help make Tor better.
</p>
<p>In particular, we're looking for a few people:</p>
<ul>
<li><a href="#sysdev">Systems Developer</a></li>
<li><a href="#windowsdev">Microsoft Windows Developer</a></li>
</ul>
<p>Working on Tor is rewarding because:</p>
<ul>
<li>You can work your own hours in your own locations. As long as you
get the job done, we don't care about the process.</li>
<li>We only write free (open source) software. The tools you make won't
be locked down or rot on a shelf.</li>
<li>You will work with a world-class team of anonymity experts and
developers on what is already the largest and most active strong anonymity
network ever.</li>
</ul>
<p>
We want you to have good communication and writing skills (in particular,
you should know how to keep other project members informed of your
progress), and we want you to know how to figure out what needs doing and
then take the initiative to do it. Most project members play more than
one role, so combination developer/activist are very welcome.
</p>
<a id="sysdev"></a>
<h3><a class="anchor" href="#sysdev">Systems Developer</a></h3>
<ul>
<li><strong>New Secure Updater Features</strong>:
<br />
Additional capabilities are needed for assisted updates of all the Tor
related software for Windows and other operating systems. Some of the
features to consider include:
<ol>
<li> Integration of the <a
href="http://chandlerproject.org/Projects/MeTooCrypto">MeTooCrypto
Python library</a> for authenticated HTTPS downloads.</li>
<li> Adding a level of indirection between the timestamp signatures
and the package files included in an update. See the "<a
href="http://archives.seul.org/or/dev/Dec-2008/msg00010.html">Thandy
attacks / suggestions</a>" thread on or-dev.</li>
<li> Support locale specific installation and configuration of assisted
updates based on preference, host, or user account language settings.
Familiarity with Windows codepages, unicode, and other character sets
is helpful in addition to general win32 and posix API experience and
Python proficiency.</li>
</ol>
</li>
<li><strong>Extend the Tor Secure Auto-Update Framework</strong>:
<p>We've developed a secure auto-update framework, codenamed <a
href="http://gitweb.torproject.org/thandy/thandy.git/tree">Thandy</a>. It
needs some design work to be finished, some security decisions to be
made, and then code written to actually get the software and
infrastructure running. The primary goal is to get this working on
Microsoft Windows operating systems. Secondary goal is to have this
work with Apple OS X. The <a
href="http://gitweb.torproject.org/thandy/thandy.git/blob/HEAD:/TODO">TODO</a>
file explains more of the goals.</p>
<p>A person undertaking this project should have good C/C++ development
experience. Previous experience with Qt is helpful, but not required. One
should also have a good understanding of common security
practices, such as package signature verification. Good writing ability
is also important for this project, since a vital step of the project
will be producing a design document to review and discuss
with others prior to implementation.</p>
</li>
</ul>
<a id="windowsdev"></a>
<h3><a class="anchor" href="#windowsdev">Microsoft Windows Developer</a></h3>
This person needs to be very familiar with Windows at a system and
network level. We're looking or someone to do two projects:
<ul>
<li><strong>Improving Polipo on Windows</strong>:
<p>Help port <a
href="http://www.pps.jussieu.fr/~jch/software/polipo/">Polipo</a>
to Windows. Example topics to tackle include:
<ol>
<li> the ability to asynchronously query name servers, find the system
nameservers, and manage netbios and dns queries.</li>
<li> manage events and buffers natively (i.e. in Unix-like OSes, Polipo
defaults to 25% of ram, in Windows it's whatever the config
specifies).</li>
<li> some sort of GUI config and reporting tool, bonus if it has a
systray icon with right clickable menu options. Double bonus if it's
cross-platform compatible.</li>
<li> allow the software to use the Windows Registry and handle proper
Windows directory locations, such as "C:\Program Files\Polipo"</li>
</ol>
</p>
</li>
<li><strong>Intermediate Level Network Device Driver</strong>:
<br />
The WinPCAP device driver used by Tor VM for bridged networking does
not support a number of wireless and non-Ethernet network adapters.
Implementation of a intermediate level network device driver for win32
and 64bit would provide a way to intercept and route traffic over such
networks. This project will require knowledge of and experience with
Windows kernel device driver development and testing. Familiarity with
Winsock and Qemu would also be helpful.
</li>
</ul>
<p>
The best way to get noticed as a good developer is to join the community
and start helping out. We have a great core group of developers working
on the Tor software itself as well as supporting software like Vidalia,
Torbutton, etc.
</p>
<p>
Periodically we get new funding to work on more development
projects. Your goal should be to get into the list of <a href="<page
about/people>#Core">core project members</a> so we think of you when new
funding arrives. We're particularly looking for Qt developers and
people to help maintain <a href="<page projects/vidalia>">Vidalia</a>.
</p>
</div>
<!-- END MAINCOL -->
<div id = "sidecol">
#include "side.wmi"
#include "info.wmi"
</div>
<!-- END SIDECOL -->
</div>
<!-- END CONTENT -->
#include <foot.wmi>