- webwork@(my name).com
Through the years I've worked on enough different projects and platforms to accumulate a rather wide and varied set of skills.
Over the course of recent engagements, I've produced solutions to a number of different problems in a variety of sectors. To present a sampling of efforts, I've:
- architected and prototyped a complete rework of an online video ingestion, conversion, and distribution system, including a hybrid MySQL/NoSQL schema, a cascading, role-based access control system, as well as conducting research, evaluation, selection, and integration with third-party, hardware-accelerated codec conversion and quality normalization mechanisms.
- diagnosed both software and hardware problems in a client's embedded system, located and specified cost-effective off-the-shelf replacement devices, designed, implemented, and QAed a highly pluggable, efficient software solution in C to handle their mission-critical, quasi-realtime processing, and supported deployment efforts - deployments which've never seen a single software-related outage.
- reverse engineered a proprietary network protocol (for legitimate compatibility purposes) and constructed a server for it in C.
- designed and built a LAMP-based system for managing automated advertising campaign distribution across regions, verticals, vendor types, etc..., supporting impression-limits, inter-campaign competitive conflict resolution, and product-based triggering.
Of course, technical skill is only part of the story. Projects don't take place in a vacuum, as human interaction is a huge part of business. Over time, between independent work and my conventional career I've:
- regularly liaised with remote workers from as close as Florida and New York to as far away as Vietnam and the Czech Republic.
- often helped clients present and justify proposed solutions to their management, board, and/or investors.
- mentored junior engineers, as well as more senior contributors who were looking to adapt to a different context.
- built up extensive experience gathering requirements and turning them into functional specifications.
- frequently been the trustworthy voice and face of
engineering in pre- and post-sales contexts, as well as client
calming and expectations-management situations including:
- mollifying livid US Navy admirals sufficiently to gain a support opportunity and quickly resolve their root issue. (This happened a number of times, actually. They always went away happy.)
- providing "how [the service] can solve your problems" spiels to NCAA head coaches, fielding questions, helping with initial platform familiarization, and collecting / prioritizing feedback to guide future development efforts.
- satisfying the information and security officers of a large German bank that the solution in question was the right choice for them, despite being the only technical representation on the call, and said call coming in at approximately 3 AM without warning.
- driving retail IT device adoption by working to allay brick-and-mortar operators' fears through one-on-one architecture explanation, risk/reward breakdowns, and low-hassle system customization, where needed.
- traveling to Riyadh on less than 48 hours notice to support a deal with the largest telecom provider in the Arab region, where I was tasked with field issue diagnosis and resolution as well as being "the guy with the wrench" in meetings with their top brass.
To give a quick, non-comprehensive rundown of skill experience:
- Contexts: daemons, databases, installers, kernel drivers (Solaris and Linux, mostly, with some Windows and OSX), libraries, web backends and frontends
- Revision Control Use: CVS, git, Perforce, RCS, SVN
- Revision Control Administration: CVS, git, SVN
When it comes to the subject of networking, I've done so much in that regard that I felt the subject deserves its own section. I have rather extensive, low-level (meaning more detailed, not as in entry-level) experience with:
- ethernet (802.3 and some 802.11)
- IP (mostly v4, but some v6 as well)
- TCP, where I:
- personally designed and built a commercially deployed man-in-the-middle stack.
- implemented and researched connection-state attack
mitigation techniques relating to:
- DoS (single point and distributed)
- Hijack (ISN vulnerabilities, etc..)
- developed methods to enhance end-to-end performance from a middle intercept point.
- proxy (of the deep protocol inspection variety), server, and
(sometimes) client programming with protocols including:
- HTTP / HTTPS
- IPSec (a common tunneling protocol)
- SIP (a VOIP protocol)
- XDMCP (X-Windows Display Manager Control Protocol)
- BSD-style (rather common) and Solaris-style routing internals.
- clustering (HA/LB) topics, such as:
- VIP (Virtual IP address) management
- application vs. network-level implementation techniques
- problems that can arise via specific failure combinations (and suitable resolution approaches)
- live TCP/UDP connection migration between nodes
- many flavors of tunneling.