Nathan Keir Edel
Email: nate AT nkedel.com
Voicemail: four-one-five nine-three-five zero-zero-one-zero
I am not presently looking for a new job.
While inquiries relating to interesting local technical positions are
welcome, please do not contact me about "Guidewire jobs",
Guidewire-related jobs or positions outside the Bay Area. I am not open
to discussing relocation nor to any position relating to my present
employer's products or customers.
Thank you for your interest. PDF or DOC versions, and direct phone line
are available via request by email.
Summary
* Education: Dartmouth BA, University of California Santa Cruz MS
* 12 years of software engineering experience
* 8 years building enterprise applications in Java
* 3 years working with storage-related software systems
* 17 years of Linux experience as user, developer and administrator
* Significant related IT/sysadmin experience
* Skills highlights:
* Strongest in Java, with some systems-level C experience.
* A versatile generalist and quick learner.
* Extensive experience with benchmarking.
Work Experience
Guidewire Software
Jan 2011 — present
Senior Development Systems Administrator
* Responsible for installing, maintaining, and upgrading core
systems used by the development teams for testing (including
performance, manual QA, and automated tests), source control,
bug tracking, and build automation.
* Developer for internal IT process automation and internal-facing
web applications.
* Technologies used: Linux, Java, Perl, iSCSI, SAS, SSH,
Virtualization (Xen primarily), iSCSI, NFS, SSH, Apache,
10GB Ethernet
March 2006 — Jan 2011
Software Engineer
* Completed the implementation of searching for contacts
by proximity using Geocoding, and supported the feature
through two release cycles and several point-releases.
Enhancements included substantially redesigning the
underlying search queries for better performance.
* Implemented features for tracking and scoring vendor/service
provider performance. Implementation included a substantial
new SOAP integration between the servers.
* Implemented new and enhanced existing information and
instrumentation pages to support internal benchmarking and
to allow customer support to collect data for analysis from
the field.
* Application and java platform benchmarking and tuning across
multiple release cycles.
* Technologies used: Java
University of San Francisco
April 2005 — February 2006
Web Programmer/Application Administrator
* Mixed application administration/support and development position.
* Development tasks included web forms and business process automation.
* Technologies used: Perl, Java/JSP, Solaris, Linux
Panta Systems
August 2004 — April 2005
High Availability Software Engineer
* Created Linux kernel VFS wrapper for active-active high
availability on NFS.
* Wrote extensions in Python for the company's cluster
management package, supporting management and automatic
configuration of HA NFS and other storage technologies.
* Evaluated, benchmarked and deployed various storage
technologies and hardware.
* Technologies used: C, Linux, SCSI/SAS/Infiniband
University of California, Santa Cruz
September 2002 — June 2004
Regents Fellowship (2002 — 2003)
Graduate Student Researcher (2003 — 2004)
* Research topics included file/storage systems applications
for MRAM/other upcoming NVRAM technologies; two conference
papers accepted and published.
* Developed a novel scheme for compressing inodes, and
developed prototype compressing in-memory file system first
in user space and then for the Linux VFS.
* Technologies used: C, Java, Linux kernel/VFS
Teaching Assistant (Winter 2003)
* TA for "Software Methodology" (CMPS115), a senior-level
software engineering course.
Kana Software
July 1999 — August 2002
Senior Software Engineer
* Developer for Kana Forms through five complete release cycles
* Created Java and Perl versions of Kana Forms, rewrote both
web- and application-server components to support
international and multi-lingual content.
* Rewrote the mail sender for Kana Response to support HTML and
international content; replaced out of date proprietary code
with code that made use of a standard API (JavaMail).
* Enhancements and bug fixes in the Response application server
and Visual Basic client.
* Technologies used: Java, Perl, Servlets/JSP, Swing, Javamail,
XML/DOM, Visual Basic
Education
University of California, Santa Cruz
March 2011
* M.S. degree in Computer Science
Degree requirements completed (diploma pending)
* MS Thesis: "MRAMFS: A Compressing File System for Byte-Addressable NVRAM"
Defended 15 Mar 2011, (pdf)
Dartmouth College
June 1999
* B.A. in Anthropology. Computer Science Minor.
Hunter College/City University of NY
1993 — 1994
* coursework in Computer Science.
Publications
Nathan K. Edel, Deepa Tuteja, Ethan L. Miller, and Scott A. Brandt,
"MRAMFS: A Compressing File System for Non-Volatile RAM," Proceedings
of the 12th IEEE/ACM International Symposium on Modeling, Analysis,
and Simulation of Computer and Telecommunication Systems (MASCOTS
2004), Volendam, Netherlands, Oct. 2004 (pdf)
(An earlier version of this work was presented as a
work-in-progress report at FAST 2004)
Nathan K. Edel, Ethan L. Miller, Karl S. Brandt, and Scott A. Brandt,
"Measuring the Compressibility of Metadata and Small Files for
Disk/NVRAM Hybrid Storage Systems," Proceedings of the 2004
International Symposium on Performance Evaluation of Computer and
Telecommunication Systems (SPECTS'04), San Jose, CA, Jul. 2004 (pdf)
Relevant Skills
Languages:
(proficient) Java, Perl, C
(some familiarity) C++, HTML, PHP, JavaScript, x86 Assembly, SQL,
Visual Basic 6, bash
Application/Web Server: Tomcat, Apache, mod_perl, some familiarity with IIS
Technologies/APIs: Servlets/JSP, JavaMail, Linux kernel APIs
(VFS especially), MIME, SMTP, HTTP, XML/DOM/SAX, perl modules, Sockets,
SOAP/WSDL/web services, some familiarity with AJAX and with J2EE
technologies not mentioned individually.
Development Tools: IntelliJ IDEA, perforce, jira, Linux/GNU tool
chain, KDevelop, cvs, Subversion, Bugzilla (some familarity with Eclipse)
Operating Systems: Linux (17 years+), Solaris, Windows Server
Databases: some familiarity with JDBC, Perl DBI, mysql,
MS SQL Server and Oracle
Other Networking: MIME, SMTP, IMAP, POP3, SSH, Postfix,
spam/email virus scanning, some familiarity with Exchange server
Storage technologies: SCSI/SAS/SATA, RAID, Linux LVM, NAS/NFS/SMB,
iSCSI, some familiarity with SAN, Fiber channel, Infiniband, Lustre
(These are at an administrator level and not a protocol level.)
Academic Projects
* A design for data protection for large archives using
cross-file erasure coding and fast mirror copy
* Benchmarking of commodity and linear flash memories as
secondary storage for Linux
* Simulation of branch prediction techniques using perceptrons
* Survey of recent work in Aspect Oriented Programming (Java-related)
* Survey of work in Genetic Algorithms, with demonstration of
their use in a Blackjack program (C on Linux)
(See also conference papers above)