Résumé of Erik Seaberg

email: ems@jrandom.com
cell: +1 (650) 248–7109
mail: General Delivery
Palo Alto, CA 94301–9999

Goals

Design, develop software to meet business needs for uncompromising robustness, maintainability, efficiency. Learn and evaluate new technologies, serve team as expert. Prefer small intense team and test-driven development. Relocating to San Francisco Bay area.

Skills

Software Design
Robustness (test-driven development, design by contract, event escalation, instrumentation); Concurrency (threading, coroutines, deadlock/livelock); Security (capabilities, delegation, auditing, cryptography)
Software Development
C++ (STL, POSIX, Win32, ATL, ODBC, Apache module API); C# (P/Invoke, NUnit, WSE, performance tricks); Java (JDBC, JSP, JAAS, JNI, AWT, JTAPI); COM (apartments, Automation, IDL, marshaling); SQL (ANSI DDL and DML, Transact-SQL, Oracle PL/SQL, MySQL); ECMAScript (JavaScript, DOM, JScript/VBScript, ASP, ADO); Perl (CGI, DBI, Apache embedding); Assembly (JVM, x86, 68K); Common Lisp and CLOS; Ada; Eiffel; ML; Forth
Information Management
Databases (relational model, DBM files, Lotus Notes/Domino, network model and Raima Data Manager); Markup (XML Schema, XSLT and XPath, DocBook, SGML DTD, TeX); WWW (HTML, CSS, WAP WML); Configuration Control (Perforce/Source Depot, SourceSafe, CVS, Ant, Visual Studio, GNU Make, BUILD.EXE, Windows Installer, WiX)
Communication Protocols
WWW (HTTP, FTP, SMTP, MIME, NNTP, Telnet, Gopher); Voice (MBone/SDP, SIP, RTP/RTCP, VoiceXML); Security (firewalls and proxies, OpenPGP, RADIUS, RSA PKCS/X.509, EAP/802.1X); Compression (PNG, zlib, ASN.1 DER/PER); Directory (DNS, LDAP); Internationalization (Unicode composition, UTF-8/16/7, code pages and shift states); Remoting (SOAP, RMI, DCOM)
Miscellany
Rapidly comprehend technical specifications; Build constructive relationships with QA team; Assemble and deploy computer networks

Education

Bachelor of Science · University of Washington–Seattle · September 1988–June 1992
Earned degree cum laude in Computer Science. Member of Phi Beta Kappa and Golden Key honor societies.

Employment History

Software Design Engineer (contract) · SolutionsIQ · November 2005–April 2006
Assigned to secure networking team at Microsoft. Maintained, supported, and tested built-in Windows Vista services to prompt for credentials and authenticate with wired and wireless networks. Resolved buffer handling problems and assorted bugs in legacy shell objects for network configuration.
Software Design Engineer (contract) · SolutionsIQ · April 2004–April 2005
Assigned to MSN Messenger server team. Resolved many buffer handling problems in legacy C++ server code. Helped design, implement, and support testbed deployments of high-performance C# gateway between proprietary MSN and SIP-based instant messaging and presence services (such as Live Communications Server and Vodafone). Developed log analysis tools, diagnosed and helped troubleshoot problems in test tools and third-party code.
Software Design Engineer · Click2Learn (now SumTotal) · December 2002–January 2004
Designed, implemented transparent TCP/HTTP proxy and scalable demultiplexor server for components of realtime virtual classroom application. Trained new team in Hyderabad, AP, India on Win32 thread primitives, overlapped I/O, COM, and development best practices. Advised team on network throughput, TCP windowing and IP fragmentation, latency/dropout tradeoffs, GDI painting, and waveform audio API buffering; proposed improvements.
Software Development Consultant (contract) · Loudeye · May–October 2002
Designed dropout recovery, compression and resolution scaling for Win32 application demo system; documented prototype and planned design for smooth restart of project when resources permit. Learned unmaintained PowerPoint upload application (JSP, beans, servlet filters) from source; migrated to target new production business object layer; advocated production workflow changes to improve user experience; supported successful production deployment. Designed, implemented JAAS-based security layer authenticating external users and enforcing complex authorization rules; adoption by other applications expected. Owned defunct telephony automation project; demonstrated prototype multi-threaded calling agent with streaming/archived Windows Media encoder output.
C++ Developer · Accretive Technology Group · October 2001–May 2002
Designed content server network balancing HTTP load geographically and prioritizing revenue-generating traffic; implemented first phase (pool per media type). Designed, developed HTTP parser to call out URLs while preserving invalid markup. Developed self-service WebDAV hook (and highly interoperable FTP/WebDAV gateway) to inspect uploaded files and verify only approved formats are used. Tested, maintained high-performance Apache module to perform load balancing by modifying called-out URLs. Supported successful production deployment.
Senior Software Design Engineer · Wonderhorse · January–September 2001
Expanded customer base by designing, developing HTTP server to fit inhouse asynchronous network engine along with WinINet-based HTTP client mode to traverse firewalls. Improved service security by identifying severities of possible exploits, designing source verification rules (without changing wire protocol). Debugged, maintained ASP signup system and T-SQL authentication stored procedures. Designed, developed session negotiation and management for next-generation voice conferencing server; led team in rapid SIP and RTP competence; raised needed product changes based on protocols' capabilities. Improved immediate cash flow prospects by designing, developing metered use client with cryptographic verification.
Lead Developer · U-Bridge Technologies · March–November 2000
Designed, developed mission-critical high-throughput XML application server based on thttpd and expat with symmetric encryption, Oracle worker processes, event record/playback for testing. Designed, developed typesafe low-overhead mapping from XML to C++ objects. Maintained ASP user profile management system. Built, administered SMP Linux server testbed. Advised Mumbai outsource development team on modern C++, Outlook, OLE Automation, postmortem debugging. Supported successful beta deployment. Maintenance, troubleshooting on DSL circuit, VMWare client testbed, Gauntlet firewall, DNS, NT domain, Exchange.
Software Consultant · Analytical Software · December 1999–March 2000
Contributed to design, development of inhouse servlet template engine for business objects. Developed dial-in authorization server for Internet appliance vendor; deployed dial-in server inhouse. Reverse-engineered Internet broadcaster's cobranded streaming service; reported feasibility of non-integrated ad reporting, dynamic content scheduling.
Studio Developer · ELF Technologies (now Serengeti) · December 1994–December 1999
Developed applets, servlets to Web-enable Microsoft Access-based invoice editor; added public-key encryption to prevent company access to information under attorney/client privilege. Designed robust server job scheduler, administered via Notes or OLE Automation. Maintained Perl scripts to robustly parse variety of unstructured invoice formats. Wrote server jobs automating workflow and mapping data between Notes databases, Oracle, Access, and mainframe data files; negotiated needed changes with clients. Contributed to design, development of inhouse Lisp interpreter with Notes, ODBC, EBCDIC support; developed garbage collector greatly improving server job stability.
Software Developer · CARE Computer Systems (now Keane Care) · July 1992–December 1994
Designed, developed text-mode 4GL runtime targeting customers' 2MB 80286 (MS-DOS) systems, with object serialization and lightweight DLLs. Team C++ language lawyer, expert on IA32 protected mode and debugging. Maintained C data entry screens.