NOTE: I like my current job, and I *am not* looking for a job right now. When that changes, I'll change this resume. If you email me with a job offer based on having read this resume, I will assume you are not a very careful recruiter. =========================================================================== NICHOLAS A. MATHEWSON Email: nickm at alum.mit.edu Web: http://www.wangafu.net/~nickm/ Objective A long-term position in software engineering. Education Massachusetts Institute of Technology Sep 1995-Jun 2002 - Received BS/MEng degrees in Computer Science, with minor in Linguistics. - Undergraduate GPA: 5.0/5.0. Graduate GPA: 4.7/5.0. - Relevant courses included: Multithreaded Parallelism Computer Systems Engineering Computer Language Engineering Machine Learning (Compiler development) Network and Computer Security Theory of Programming Languages - Masters thesis focused on automatic verification of information-hiding properties in Java bytecode. Employment History CertCo Cambridge, MA Contractor June 1999-Aug 1999 - Helped develop security/PKI software on Windows NT. - Worked with a small team to extend code in a large (200+ kloc) certificate distribution system. - Duties focused on developing user interface, database interface, and automatic code generation. MIT Computer Science Department Cambridge, MA Teacher's Assistant Jan 1999-May 1999 - Taught software engineering principles and techniques to a class of 20 students. - Designed and maintained course software (8 kloc) and web pages. MIT Laboratory for Computer Science Cambridge, MA Research Assistant, Programmer May 1997-June 2000 - As an undergraduate, developed PolyJ, a compiler to add parameterized types to Java. (35 kloc) - As a graduate student, researched thesis on privacy enforcement in Java bytecode through information flow control. (Part of the Jif system.) Reputation Technologies Somerville, MA Chief Architect June 2000-Jan 2003 - Designed and developed a data collection, analysis, and visualization tool for use by purchasing managers in large corporations. - Served as technical lead for small team of engineers with varying degrees of expertise, to coordinate standards and practices to write software in Java; deliver on Linux, Windows, and Solaris; run on Oracle and SQLServer databases; and deploy on the JBoss and Weblogic J2EE application servers. - Investigated, designed, and implemented analytic tools to run on large data sets, including Support Vector Machines, statistical classification, and various other machine learning techniques. Onion Routing Project Cambridge, MA Subcontractor Apr 2003-present - Subcontracted to develop an anonymous communications network for a research project at the US Naval Research Laboratory. - Focused on optimizing a tightly written C network application, while improving software quality and developing new features, including location-hidden servers. - Co-drafted technical specification of anonymity protocol. Open source projects Mixminion http://www.mixminion.net Principal developer May 2002-present - Helped design a next-generation secure anonymous communications protocol to address flaws in current Type I ("Cypherpunks") and Type II ("Mixmaster") designs. - Created a reference implementation for Type III anonymous remailers in a mixture of C and Python (31 kloc). - Worked with server operators to deploy a testing network, currently in operation. Publications Nick Mathewson, Roger Dingledine. Practical Traffic Analysis: Extending and Resisting Statistical Disclosure. Submitted. Roger Dingledine, Nick Mathewson, Paul Syverson. Tor: The Second-Generation Onion Router. Submitted. Nick Mathewson, Roger Dingledine. Mixminion: Strong Anonymity for Financial Cryptography. Financial Cryptography, Feb 2004. Roger Dingledine, Nick Mathewson, Paul Syverson. "Reputation in Privacy Enhancing Technologies." Computers, Freedom, and Privacy, Apr 2002. George Danezis, Roger Dingledine, and Nick Mathewson. "Mixminion: Design of a Type III Anonymous Remailer Protocol." IEEE Symposium on Security and Privacy, May 2003. Roger Dingledine, Nick Mathewson, Paul Syverson. "Reputation in P2P Anonymity Systems." Workshop on Economics of P2P systems, June 2003. Skills Programming Languages - Strong experience in C, C++, Java, Perl, and Python. Fair experience with many other languages. Operating Systems - Strong experience in Linux/Unix use, programming, and internals. Some experience with Windows development. Tools and Technologies - Strong knowledge of compiler frontends, Unix networking, Unix GUI development tools, network security, and CGI. Working knowledge of CORBA, XML, Gnome, X Window system, OS security, IPC, Matlab, SQL, and Docbook, interface design. Human Languages - Functional in Spanish Awards Anna Pogosyants UROP Award 1998 - Won annual undergraduate research award for work on PolyJ compiler. Hobbies International cooking, Tae Kwon Do, science fiction, film appreciation, photography, swing dance, and Joycean studies. ===========================================================================