Robert Copeland
me@bobcopeland.com

Highlights:
  • Over 15 years experience in developing software at all levels of the stack, in a number of disciplines and a variety of languages.

  • Highly proficient in C, Java, Python, Perl, and x86 assembly.

  • Specialized domain knowledge in wireless networking, storage systems, VOIP, cryptography, and computer graphics.

  • Open source contributor to the Linux kernel (OMFS file system; Rio Karma USB driver; mac80211 mesh subsystem; various wireless drivers including ath5k, mwl8787, ath10k, ath9k, wl1251, wcn36xx) and to userspace (wpa-supplicant mesh; wmediumd). Additional projects at https://github.com/bcopeland.


Professional History:
ConsultantSpinning Rust Systems
Whitby, ON12/11 - Present
  • Developed wireless solutions for Cozybit, Inc., Agilemesh Inc., Terranet AB, and others. Work included implementations of controlled channel access (MCCA) in Linux, mesh support for wpa-supplicant, multi-radio mesh, advanced power saving.

  • Presented seminars at Qualcomm Atheros, Inc. and HTC USA on mesh networking in Linux.

  • Developed web applications for LastPass, Inc., on the frontend and backend. Created tools for monitoring and managing LastPass's Hadoop/HBase clusters and contributed patches upstream to HBase. Characterized and improved performance with tools such as perf, gdb, etc. Developed and maintained the LastPass open source projects at https://github.com/lastpass.

Senior Software EngineerLastPass
Vienna, VA02/11 - 10/11
  • Focused primarily on scalability and high availability of LastPass and XMarks storage layers. Supported and expanded use of NoSQL data stores (Cassandra and HBase) to handle millions of users of these services.

  • Designed XMarks Repair feature that utilizes Merkle trees for worst-case O(N) tree comparisons.

  • Improved software development process through introduction of test suites, continuous integration, distributed version control, and internal bug tracking.

  • Enhanced LastPass software security by initiating move from single-round SHA-256 hashing to PBKDF2-HMAC-SHA256, creating implementations in several languages.

Senior ConsultantAltron, Inc.
Fairfax, VA01/03 - 02/11
  • Architected major US Marshals Service (USMS) enterprise system JDIS, a Swing application with an EJB/RDBMS backend. Application consisted of more than 5000 source files and 800 KLOC.

  • Spearheaded the effort to unify the Prisoner Tracking System (PTS) and the Warrant Information Network (WIN) under JDIS 8, reducing duplication of prisoner records throughout the enterprise. This four-year project involved design of a unified relational schema comprised of 200+ tables, migrating existing code and data to the new schema, and implementing new entities and client UIs to replicate features from the previous systems.

  • Rewrote JDIS persistence layer from ad-hoc JDBC queries to the Hibernate ORM, shrinking codebase by 20,000 lines and enabling portability from Informix to Oracle.

  • Created rsync-like distribution server for efficiently deploying class file updates to JDIS desktop clients

  • Presented with USMS Director's Award in June, 2005

Software EngineereStara
Reston, VA10/00 - 01/03
  • Enhanced and maintained eStara's call gateway, the main component of the company's SIP architecture. Server was Java-based with an RDBMS backend, and performed tasks including call session management, traffic shaping, and PSTN termination.

  • Implemented Phone2Phone service using third-party call control (3PCC), eventually responsible for 95 percent of eStara's completed call traffic.

  • Improved voice quality and functionality of C-based PC2Phone soft-phone through implementations of jitter buffering, voice activity detection, automatic gain correction, echo suppression, and symmetric cryptography.

  • Authored VoiceXML (VXML) interpreting engine, providing eStara with the ability to develop and deploy new complex phone applications in hours instead of weeks.

  • Presented in June 2001 with eStara's Quality Quest Award, given for singular contributions to achieving product performance goals.

Linux Team Lead DevelopereTantrum.com
Dulles, VA12/99 - 09/00
  • Led four-member team in developing Unix versions of client software for eTantrum's MusicID service.

  • Contributed to design and implementation of critical cross-platform components including the GPLed Songprint library, the Personal Media Agent codec plugin architecture, and a reliable inter-process message queue.

  • Ported eTantrum's skinbytes pixmap compiler from Windows to Linux, while greatly improving maintainability on both platforms by converting hundreds of lines of x86 assembly code into C.

  • Provided expertise on all aspects of Linux development, from OSS and ESD audio interfaces to direct Xlib and GTK+ windowing environments.

Software EngineerIntercept Technology, Inc.
Atlanta, GA08/98 - 12/99
  • Designed and developed enhancements for Pantheon, Intercept's PCB layout CAD system, a project comprised of more than a million lines of C code.

  • Added a number of new features to Pantheon including a parametric model library for RF circuit design based on HP's Advanced Design Suite (ADS); PCB database translators for Allegro, Orcad, and other major systems; and intelligent cut-and-paste, enabling easy re-use of common PCB footprints.

  • Ported entire system to Linux, making Pantheon the first commercially available PCB software on that platform.

  • Managed critical Solaris, HP-UX, and Linux servers.

Software Engineer InternTransQuest, Inc.
Atlanta, GA06/96-10/96, 06/97-09/97
  • Developed C, Perl, and Java Servlet applications for the Delta Air Lines web site, http://www.delta.com.

  • Designed web-based reservation system for Delta and TransQuest employees, which interfaced with the reservation mainframe and Oracle SQL databases for real-time queries of flight information and seat availability.


Education:
Johns Hopkins University09/09 - 12/10
Master of Science in Computer Science
 
  • Focused on systems. Projects included cache-oblivious data structures for file systems, partitioning algorithms for parallel graph processing, a tap-like driver for user-space WiFi simulation, and a VM system for xv6.

Georgia Institute of Technology09/94 - 06/98
Bachelor of Computer Engineering
With Honor
  • Specialized in software and applications. Major project involved VHDL design of a pipelined RISC processor, port of a C compiler to its ISA, and execution of a simple program on a synthesized FPGA.


Publications:

Cecere, J. and Copeland R. ``EDA Tools for RF Design.'' Printed Circuit Design Magazine, Aug. 1999: pp 18-22.