Dirk Jagdmann
Coder
I'm a software developer currently working in Silicon Valley on
network optimization software. I have a strong background on Unix/Linux/BSD programming which
I'm doing since 1995. But apart from 32/64bit C++ code I have also done
lots of 8bit assembly coding on microcontrollers and the
Commodore 64 (that was in the late 1980's).
And since 1997 I maintain various Internet servers/websites and
have built and maintained a lot of typical web applications, mostly
done with PostgreSQL
and Embperl.
I live in Santa Clara, California and can be contacted by email
to dirk@jagdmann.de or by phone
415-830-6442. Most of my
(free) Unix software is available on my
website llg.cubic.org, while my
private
website http://cubic.org/~doj
contains lots of (unsorted) stuff.
My Resume
A shorter printable version of my resume is found in
the English
PDF.
- May 2017 -- present
-
Principal Lead Linux Developer at Akamai Technologies, Santa Clara, CA
- Implement security features
for Bot
Manager: encryption of customer data for safe transport,
HTTP body manipulation, HTTP request routing
- Design/implement a SaaS system for HTTP request processing:
distributed key/value store per
datacenter, Lua engine for
HTTP request manipulation, self monitoring for rapid exception
handling, crash resiliency from HTTP proxy server
- Feb 2010 -- Apr 2017
-
Linux Developer at Riverbed, Sunnyvale, CA
- Worked on network protocols (iSCSI, NFS) for the SteelFusion product.
- Worked on
Microsoft
Exchange optimization of the SteelHead appliance
(MAPI
protocol). Implemented support for Outlook Anywhere (RPC over
HTTP). Developing a heavily multi-threaded Linux C++ application
to handle thousands of MAPI TCP connections and apply
optimization techniques to them.
- Maintained the Riverbed internal version of
Wireshark (implemented in C).
Developing new features/protocols for Linux and Windows.
- Oct 2007 -- Jan 2010
-
Lead Linux developer at NeoCatena Networks Inc, Sunnyvale, CA
- Architected and implemented the
RF-Wall product,
a RFID security
appliance. The RF-Wall system is a collection of server
processes interfacing RFID readers, evaluating and possibly
manipulating RFID tags as they are handled by the readers.
Written in C++ and using
PostgreSQL as data
storage. The appliance uses several TCP and UDP network
protocols to interface readers and backend systems.
- Sep 2005 -- Jul 2007
-
Lead FreeBSD developer at Secion GmbH working on software for Arcor/Vodafone, Hamburg, Germany
- Development of a DynDNS System in a high-availability setup: mod\_perl front end, PostgreSQL data storage, dynamically configured bind nameservers.
- Architected a high-volume download platform for voice mail. This is a high-availability system of 15+ nodes in multiple locations, communicating with XML over HTTP requests, converting A-law PCM to MP3, utilizing large NFS storage. Implemented as perl and C++ server programs.
- Installation and maintenance of web, FTP and mail servers with FreeBSD.
- Jul 2003 -- Aug 2005
-
Linux software developer at DN-Systems GmbH, Hildesheim, Germany
- Implementation of a web-application for medical services accounting with perl, PostgreSQL running under Linux and mobile data entry with iPAQ PDAs and pc-card smartcard reader.
- Maintained and improved the RFDump tool, a RFID security program for Linux written in GTK and C.
- Programmed the GTK-Installer of the Linux Security Local Auditing Daemon V2.
- Designed a test-suite for email server load tests as Linux perl scripts.
- Development of an OVAL to NASL proof-of-concept compiler using a XLST processor as the XML compiler.
- Jul 1998 -- Jul 2001
-
Linux administrator and software developer at Reese-Data-Exchange, Hamburg, Germany
- Installation and maintenance of web, FTP and mail-servers.
- Development of web-applications with perl and PostgreSQL: real estate sales portal for a local bank, online-shopping sites.
Skills
From my current and past projects I have gathered expertise in the following areas:
- C/C++ development
- perl development
- PostgreSQL and PL/pgSQL, SQLite
- network (protocol) Development: TCP/IP, HTTP, UDP (broad-/multicast)
- OpenGL and general Audio/Graphics development
- Linux/FreeBSD software development, administration and operating system customization
- Website/Webservice development
- Microcontroller development: MSP430, Atmel AVR, 6502
- Hardware drivers, Linux kernel and similar tasks
One more comment on programming languages: All imperative
and object oriented programming languages are more or less the
same. If you know how to use one, you can easily adapt to others of
the same kind. So although I have listed C/C++ and perl in the above
list, I can do development in similar languages as well which would
include: Java, Python, Ruby, PHP, sh, pascal and whatever will come in
the future. Due to my background in hardware and microcontroller
development (and my history on the C64) I know assembler for a number
of processors as well.
Contributions to Free Software Projects
- Wireshark
Network protocol analyzer, changes mainly to HTTP, SSL and DCE/RPC dissectors.
- srm
Secure file deletion for POSIX systems.
- dmx4linux
A driver suite for the Linux kernel to interface DMX hardware using for lighting.
- Catweasel linux driver
A linux driver for the Catweasel MK3/4 Floppy Controller.
- Cisco CMXML Services
A collection of cmxml services for Cisco's 79xx phones.
- pg_trompe
Multi-Master replication for PostgreSQL.
- multimidicast
Transmits and receives MIDI data via UDP multicasted on the LAN.
$Date: 2020-09-25 03:05:06 +0200 (Fri, 25 Sep 2020) $ © by Dirk Jagdmann,