Curtis Jones - Resume Atlanta, GA M: 404.492.6437 curtis.jones@gmail.com http://curtisjones.us/resume [Introduction] Accomplished systems architect and project lead, specializing in scalability, security, network programming and client / server design. Successfully designed and deployed a network security application for macOS, a web & print publishing system for The Atlanta Journal-Constitution and Cox Interactive, a structural stress analysis library for Differential Solutions, Inc., a distributed communication framework for Avienda, a commercial real estate data management and research system for the Dorey Publishing Company, infrastructure optimizations related to processing financial data, exchange feeds and more for Bloomberg LP, the first iPhone app for The Wall Street Journal, a custom network protocol, server and database for JamCloud, two phonetic search macOS apps for Nexidia, an audio mixer / speech synthesis system for Coca-Cola, a VT-220-based inventory management iOS app for Kmart, a Sonos-integrated iPad app for MUSEaic Labs, an HLS audio streaming core for FIT Radio, a custom ITF barcode scanner for Experience LLC, and a Cocoa app for Apple. [Objectives] I am interested in software engineering work for challenging, non-trivial projects in a developer-friendly environment that fosters creativity, productivity and pride in one’s work. I am experienced as a project and team lead. I can work well as part of a team or independently and I expect to have to solve problems and research solutions. I am specifically interested in work pertaining to macOS, iOS, tvOS, watchOS or Unix software engineering. [Experience] Greenlight (Feb ’18 - Present) greenlightcard.com | Led the development of the iOS Greenlight v2.0 effort. Reduced technical debt, implemented new interfaces, improved crash rate, improved analytics reporting, improved APIs, simplified UI styling, cleaned up old code, provided guidance on IOS interface design standards, applied best practices and software design patterns. Quasar Blu (Aug ’16 - Apr ’17) Part of a small but highly talented group of engineers. We worked on a social networking app that relied heavily on video recording, editing, playback and sharing, relying heavily on AVFoundation for all things video related, and the coordinator design pattern for software design. Chick-fil-A (Jan ’16 - Present) chick-fil-a.com | Initially started as an as-needed consultant for iOS related issues, including software design and debugging, eventually expanding to include implementing bug fixes and resolving performance issues — for point-of-sale, Apple Watch / watchOS and other enterprise applications. Apple (Apr ’15 - Oct ‘17) apple.com | Lead the engineering of an internal macOS / Cocoa retail store app based on an existing iOS app and shared data model. Worked daily with a part-local, part-offshore team. Mentored other engineers on topics related to Swift, Objective-C and Cocoa; • taught an in-office class on constraints & autolayout; • performed code reviews for nearly all UI-related changes, with an eye towards improving overall code quality and instilling a sense of individual code ownership. Implemented numerous custom controls; • heavily customized many standard controls; • architected and implemented the app’s window and tab management system. Performed further customization throughout the app to support keyboard and VoiceOver accessibility. Debugged numerous issues including custom first responder behavior and UI performance (such as table view scrolling performance). Implemented several advanced text layout features. FIT Radio (Mar '13 - Present) fitradio.com | Inherited a codebase of an iOS streaming radio app from another development group and hit the ground running by resolving numerous crashing issues, playback stalling issues, and general instability. • Replaced the AVAudioPlayer-based v1 streaming mechanism with a custom-built HLS streamer built on CoreAudio; added support for headphone controls, lock screen metadata and background streaming. • Performed significant refactoring, resolved 100's of long-standing issues, implemented a caching mechanism to improve playback stability in poor network conditions, • added run-tracking with CoreMotion and CoreLocation, • and consulted with the client to provide direction throughout development. Kenzie Lane Innovations / MUSEaic Labs (Jul ’12 - Jan ‘15) museaic.com | Developed several native iOS apps targeted for the iPhone using Core Animation, Core Audio, Core Location, audio queues (play, record, offline render, transcode), Speex, Google Voice transcribe, iSpeech transcribe, Spotify (libSpotify, CocoaLibSpotify), Rdio, iZotope (FunFX, CoreFX, TrashFX), Parse.com and the Facebook SDK; • responsibilities also included the implementation of heavily customized interfaces based on design comps in Adobe Photoshop. • Implemented backend macOS / Cocoa app as “middleware” between iOS and 3rd party data services including The Echo Nest, MusicMatch and SenticNet. • Reverse engineered the Sonos protocol and integrated support for discovering and interacting with Sonos hardware in an iPad app. • Developed prototype iOS app with Swift and Objective-C incorporating a unique, cutting-edge UI design including integration with Parse, Instagram, Spotify, Camera and iCloud Photo Library; • app required non-trivial use of custom gestures, autolayout constraints, UIEvent tracking and performance optimizations through content caching. • Consulted, performed code reviews, debugging and provided guidance on an iOS app relying on CoreBluetooth which was experiencing background connectivity issues. Bridge2 Solutions (Sep '14 - Oct '14) bridge2solutions.com | iOS prototype app design and development with Swift and Objective-C using autolayout constraints, incorporating designs from a 3rd party design firm working for the end-client. Insightpool (Jul '14 - Oct '14) insightpool.com | iOS prototype app design and development with Swift and Objective-C using autolayout constraints. Experience LLC (Jan '14 - Mar '14) expapp.com | Designed, developed and integrated a custom ITF barcode scanning algorithm and implementation into this event ticket-upgrade app. Suitable ITF barcode scanner support was not available from any third party libraries at the time. REACH Health, Inc. (Nov '13 - Feb '14) reachhealth.com | Provided consultation and development expertise regarding macOS application development, including Xcode, Cocoa UI design and Chromium Embedded Framework (CEF) integration. Razorfish (Sep '13 - Oct '13) razorfish.com | Worked with the in-house engineering team to bring a large-scale iOS retail project to market. Implemented interfaces based on screen comps from the design team, coordinated development with the server engineering team, researched and implemented optimizations and bug fixes. Gree (Jan '13 - May '13) gree.co.jp | iOS game design and development. Updated existing app and framework code with up-to-date language and API features; • performed foundational work for a new iOS game based on the Android counterpart; • researched and resolved long-standing bugs and other issues. AdvancEd (Nov '12 - Feb '13) advanc-ed.org | Instructed in-house Java developers on iOS programming starting with the basics of Objective-C. Provided guidance to management regarding design, usability, backwards compatibility, deployment, etc. as they approached their first iOS app. Provided guidance to the design team regarding deliverables. Developed (along with their in-house team) the company's first iOS app - including integration with their existing backend and implementation of screen comps. Motive (Oct '11 - Jul '12) Developed an iOS app targeted for iPad with PhoneGap integration that uses both proprietary XML-over-HTTP and SOAP for backend service communication. • Developed a Node.js C++ add-on that extends native UPnP functionality back to JavaScript on iOS. Sears Holdings (Jul '11 - Mar '12) Developed an iOS app for inventory management to replace the aging, proprietary handheld units at Kmart stores. App includes: a custom VT-220 emulator with support for proprietary escape sequences for sounds and for configuring and controlling an IPC Linea-Pro barcode scanner, • telnet connection negotiation, • AudioUnits for tone-based feedback, shared battery charging between the sled and iOS device, • ZBar as an alternative means for barcode scanning • custom controls and toolbars for efficient data entry • wireless LAN monitoring to prevent unintentional disconnects • and various internal tools for streamlining operations. Moxie Interactive (Aug '10 - Nov '10) Developed a service (accessible via Apache) for Coca-Cola running on macOS that mixed and resampled AIFF output from Apple's SpeechSynthesis framework with background music using LAME (for mp3 encoding) and Core Audio (for aiff decoding). See: crammerkeeper.com Nexidia (Mar '10 - Jun '11) nexidia.com | Lead the development of "Get" (getphonetic.com), a Cocoa / macOS application integrating Nexidia's Workbench phonetic search technology with Final Cut Pro. • Rapidly designed and developed a functional prototype for the NAB 2010 conference. Implemented bug fixes and changes during the course of the NAB demo. • Further developed the prototype into the v1 release which included the use of XMEML via AppleEvents for Final Cut Pro integration, • Grand Central Dispatch (GCD) for multi-threaded search, • SQLite3 for data backing, • and DiskArbitration, FSEvents, Spotlight, LaunchServices, IOPowerSource, QuickTime, QTKit and OpenSSL for various other features. • Completed another contract for a 2nd macOS product which remains under wraps. JamCloud (Jul '08 - Mar '10) Lead the development of the core backend infrastructure, including database schema design, development of the NIO based scalable, multi-threaded Java server (including implementations of AMF and RTMP). The server design focused around consuming minimal resources per socket and that of not allowing slow sockets to monopolize threads. • Subsequently designed and developed a replacement C based server with an emphasis on efficiency by minimizing dynamic memory allocation. • Created a prototype client implementation for the purpose of verifying server functionality, locating memory leaks and simulating load. • Proposed, designed and implemented an efficient and suitable binary protocol for client/server communication. • Worked with the PostgreSQL DBA to design a suitable database. • Assisted in the development of stored procedures using PL/pgSQL, which provided a clean, consistent interface for the C server and minimized the complexity of the SQL found in the server code. The Wall Street Journal (Jul '08 - Feb '09) wsj.com | Lead the development of The Wall Street Journal's first iPhone application based on Apple's iPhone SDK. Worked with a small team to assess requirements for this project, demonstrated various interface features of the iPhone SDK to managers and designers --with example applications and interface mockups. • Implemented custom RSS feed parser using the push API in libxml2, • added support for saving stories locally and performing real-time, full-text searches of saved content using SQLite, • devised a challenge-response based authentication mechanism (based on OpenSSL) for (mostly) restricting backend access to our iPhone application, • worked with our in-house J2EE developer to create services for improving our application performance, • assessed the competition to ensure that our application was technologically superior. Lime Wire LLC (Nov '07 - Jun '08) limewire.com | Member of the development team for the LimeWire distributed p2p file sharing application. Worked with internal project management tools such as JIRA (ticket tracking), FishEye (revision management) and Crucible (code reviews). Specific responsibilities include network programming, extending the file sharing protocol to improve features and performance, and improving platform native integration for macOS through the JNI. • Removed all 32-bit dependencies (i.e., Carbon, libObjcJava); ported many features to Cocoa; updated all libraries with 32/64-bit versions; and finally got LimeWire working under Java SE6 on macOS • Added Growl support. • Streamlined the installation process. • Significantly reduced the size of the installer by modifying the build system and installer scripts to use pack200. • Performed the initial design and coding for the core-as-a-service initiative which will allow for platform native GUIs that communicate with the Core using XML-over-HTTP with Restlet on the Core side. Primarily worked with Java, C and Objective-C. Bloomberg LP (Mar '07 - Nov '07) bloomberg.com | Member of the team that designs, implements and supports the infrastructure of the financial data systems at Bloomberg. • Analyzed performance issues with heavily used libraries using collect and analyzer on Solaris. Implemented a replacement function in one such library that provided a 31x speed improvement and which doubled the performance of several applications which depended upon it. • Performed initial design research for a replacement for the primary data processing application, which is presently the foremost bottleneck, with a goal of 10x improvement in overall throughput. • Worked with the Reuters SDK to implement parsers for new exchange feeds. • Designed, implemented, tested and deployed a Power-related exchange parser in C for Solaris based on the OMX platform. Researched and selected third-party libraries (curl, libxml2, OpenSSL) to expedite development. Coordinated the efforts of teams in New York, London and Portugal. Diagnosed and assisted in correcting feed network connectivity issues over the Internet and leased lines. • Daily assisted other in-house developers with the use of internal tools, libraries and systems. Life Style Reflection (Mar '07 - Apr '07) Designed and developed a Perl and PostgreSQL based backend for Linux, including • an administration interface, • PayPal integration, • a purchase and payment verification system, • incorporation of business rules and • a templating system for easy customization of website look and feel. • Created design documents, including a database schema, based on loose specifications received verbally. • Installed and deployed final product, including database setup, on client's web server. • Completed project to the satisfaction of the client, before the deadline and under budget. In Jan '09, produced and published an iPhone application for client which provides some of the client's content plus self-analysis quizzes in an easy-to-navigate and visually appealing interface. GlowWorm FW (Sep '06 - Mar '07) Developed a macOS kernel extension which uses kauth and tcp4, udp4 and ip4 filters to monitor and control the creation of incoming and outgoing sockets and the transfer of data across those sockets. • Implemented a rule evaluation system in the kernel extension based on socket and process information, • an ElGamal signature and SHA2-512 based registration key system with a web frontend, Perl, C and Postgres backend with the ability to receive and verify PayPal payments automatically, • an arbitrary precision arithmetic library (see 'Example Code', below), in C, supporting addition, subtraction, multiplication, division, mod, mod-pow, mod-inv, gcd, pow, cmp, rand and various bit operations, • a transaction oriented, asynchronous messaging protocol with an Objective-C based Framework implementation for sending commands to the kernel extension and receiving event notifications, • a plugin-based macOS Cocoa application for controlling the system and plugins for viewing and editing the firewall rules, authorizing connection and data events and viewing system network activity. • GlowWorm FW provides a level of network security and process control not otherwise available on macOS. Differential Solutions, Inc. (Feb '04 - Dec '05) Developed a C++ library which performs load stress analysis based on the AISI specs for Cold Formed Steel (with GTStrudl output serving as library input). • Designed suitable object model based on limited specifications. • Performed rigorous optimization and result verification on non-trivial data sets. • The library serves as a key component of their AutoCAD based product. • Subsequently completed second contract extending the library's functionality, implementing additional optimizations and extending the object model based on updated specifications. Dorey Publishing Company (Feb '04 - Jun '08) Lead the design and development of a web based commercial real estate data management system with five people in my group. • Designed and developed a Cocoa based application for managing and monitoring the server and assisting with debugging. • Responsibilities included server hardware setup, • all server-side coding (Java), • database administration (compilation, installation, configuration, performance tuning, schema design and conversion, indexing, query optimization, etc.), • network protocol design, • security (intrusion detection, IP based restrictions, security alerts, server statistics, etc.), • scalability, • logging, • relationship based access management system (business rules), • flexible user permissions system, • spatial search capabilities, • XML feed for third parties, etc. • Assisted front-end developers, using ActionScript 2.0 / Flash MX 2004. • Set up, configured and maintained Linux, Apache, BigFaceless (for PDF report rendering), Subversion and WebSVN (for source versioning), Mantis (for bug tracking), MapInfo MapXtreme (for mapping), and later worked with FlashMaps Geospatial (for SOAP based Geocoding and map rendering). Authored ~200 page book (using LaTeX) documenting system design, functionality and administration. • Implemented another data management system frontend based on AJAX. The Atlanta Journal-Constitution (May '01 - Aug '04) ajc.com | Worked closely with the lead DBA of the Publishing Technologies department in writing tools to import 250+ gigabytes (2.25 billion rows) of 2000 Census Data into Sybase (on Solaris) for News Research. Assisted users in writing non-trivial SQL queries. • Developed data migration tools for DTI DT 4 to DT 5 and SCC system conversion, including an application to pull DT 4 data (images, stories, etc.) from Sybase, perform character set conversions, image manipulation (resizing, rotation, format conversion, etc.) via ImageMagick / JMagick and push into the SCC archive system. • Developed a Java / Swing application for non-SQL savvy users to create complex SQL queries. • Developed Java based GIS prototype mapping application. • Designed and deployed various solutions to automate tasks throughout the department. • Coordinated efforts with numerous departments for over a year while developing The Big-A List event publishing system - a Java-based transactional backend running on Linux. • Developed a language for describing published events incorporating all of the nuances of the newspaper's style guidelines. • Developed an algorithm for transforming a list of event dates into a concise English representation of those dates following the newspaper's style guidelines, and thereby automating what was previously a labor-intensive manual process. • Provided user support and maintenance for publishing system hardware and software. • Publishing system continues to perform smoothly, maintenance free, after nearly three years. • Assisted and mentored other developers. Avienda / Silverpop (Jan '00 - Jan '01) Developer and technical lead. • Coordinated the efforts of eight other developers. • Worked with VA Linux to design a scalable server solution for our network. • Designed and implemented a Perl, C++ and MySQL based fault-tolerant, distributed communication framework which included advanced data caching, self-replicating file system, bandwidth optimizations and encryption. • Designed and supported the database schema. • Worked closely with senior management, and quickly adapted design specifications to meet constantly changing market conditions. • Worked through the night to meet deadlines such as spur-of-the-moment investor demos and other presentations. • Worked with the admins to coordinate the distribution of new builds to the many hundreds of servers in dozens of POPs throughout the world. • Using third party libraries, added server-side support for a multi-protocol (AIM, ICQ, Yahoo, MSN, IRC) chat transport system supporting encrypted communication, offline-messaging, and integration with the mail system. Auto Auction Services Corp (Jul '99 - Jan '00) Designed and developed an Oracle / Solaris based automobile auction system, largely in Perl, for this Cox subsidiary. System included features for inventory management, auction tracking, customer access and provided facilities for third party importing/exporting of data. • Inherited initial code base with very limited documentation. Analyzed code, produced documentation and started making modifications. SunTrust Bank (Jul '99 - Jul '99) suntrust.com | Contracted to debug a critical problem in a Perl based web system for customer application processing. Due to the nature of bank security, the debugging had to be done with pen and paper (and a print-out of the suspect code). • Completed three month contract in one day. BannerFusion (Jan '99 - Jul '99) Designed and developed a Perl-based CGI banner advertising management and tracking system. BannerFusion was suitable for the management of advertising for a single web site, or as a service to other web sites with the ability to take a certain percentage of the ad impressions as payment (ie, LinkExchange). A simple web-based interface provided access to manage banners, customize the rotation weight of a banner and view impression and click-through statistics. BannerFusion continues to see limited use as of 2007. [Projects] CameraMan - curtisjones.us/cameraman | An app for macOS, iOS and tvOS, it is a light-weight app for streaming audio and video (via RTSP / Live555), monitoring and recording from IP network cameras. Using libAVFormat’s (from the FFmpeg project) ability to perform format writing, CameraMan can record streams without transcoding, simply writing the encoded audio and video frames to disk, which consumes minimal resources. Recording is further optimized by in-memory buffers that periodically flush to disk. The tvOS app relies on the VideoToolbox framework for decoding, resulting in the Apple TV 4k being able to easily handle a dozen or more simultaneous HD streams. libEmailz - github.com/senojsitruc/libEmailz | Fast and memory efficient GCD-based SMTP server library. Orbit - An Arduino & iPad program, it controlled two servos (one mounted onto the other for pan/tilt support) used to direct an antenna to track orbiting satellites, above the horizon, based on telemetry provided by the accompanying iPad app which communicated with the Arduino via UDP over Wifi. I referenced Fundamentals of Astrophysics and Applications, 3rd Ed for many of the calculations. Berkeley’s libAstro library did most of the “heavy lifting” (atmospheric perturbations, etc.). The iPad app integrated with space-track.org to find up-to-date satellite orbital parameters (“Keplerian elements”); it also displayed a world map depicting the locations of each saved satellite along with distances, relative velocities doppler shift (for frequency adjustments) and orbital predictions. MovieMaker - curtisjones.us/moviemaker | Designed and developed a macOS app for creating time-lapse movies using Apple’s AVFoundation framework. Supports drag-and-drop for importing PNG, JPEG, GIF and TIFF; • an editor allows for per-frame adjustments, in/out points and custom segments; • settings include dimensions, frame rate, bitrate, regex-based filename date parsing and overlay content; • extracts and overlays GPS data from images; • encodes movies as H.264, MJPEG, PRO RES 442 and PRO RES 4444; • exports movies as M4V, MP4 and MOV; • supports sharing movies via AirDrop, Messages, email, Dropbox, YouTube, Vimeo, Twitter, LinkedIn and Facebook; • incorporates analytics using Parse. Static - curtisjones.us/status | github.com/senojsitruc/Static | A scalable, multi-threaded discrete time signal analysis program written in C with a Posix core and Objective-C / macOS / Cocoa gui. Static supports abstractions over drivers, devices and protocols, • output methods such as planar and history graphs • and the RF Space SDR-IQ (via the libusb-0.1 based FTDI driver and the libusb-1.0 based LibFTDI driver) for input. Signal data is manipulated via per-output processing chains. Future development will include various demodulators (am, fm, ssb, etc.), signal recording and playback, additional input methods and other graphs. • The performance-oriented design includes pre-allocated objects with reference counting, • atomic data structures, • read- and write-buffered data streams, • a device-event dispatching system, • and Accelerate.framework, fftw3 and ooura fourier support. BigMath - curtisjones.us/bigmath | An arbitrary precision arithmetic library, written in C, based on Knuth’s algorithms (see The Art of Computer Programming, vol. 2, 3rd ed). This library formed the basis for the cryptographic registration system in GlowWorm FW. Supported operations include add, sub, mul, div, mod, modpow, modinv, pow, gcd, factorial (lazy), n-th root, radix conversion, scientific notation, string-to-bignum and equality comparisons. Locator - curtisjones.us/locator | A solution to my need to publish my location and status during mountain climbing trips, the process starts when a message is sent from a Spot Messenger via satellite resulting in a location update email which is picked up by the Perl script (using IMAP) and logged to a Postgres + PostGIS database. Next, the several most recent location updates are selected from the database including labels indicating the closest known point to each and exported as XML, SFTP’ed to the web server where the XSL renders the data (including an embedded Google Map) for the web browser. Additionally, status updates are exported to Blogger and Facebook. iCast - curtisjones.us/icast | A reverse engineering effort of Apple’s iTunes TCP/IP based Digital Audio Access Protocol (DAAP) and Rendezvous (Bonjour) protocols. • Implemented an MPEG audio frame parser for determining audio length, sample rate, frame count, bit rate, etc., • and an ID3 v2.2 tag parser. • The multi-threaded C based iCast server uses pthreads and gzip stream compression via zlib. AIMSpy - curtisjones.us/aimspy | A macOS / Cocoa application that has as its purpose to listen on a user-selected ethernet interface, using a raw socket, for any and all packets, and analyze, parse and display in an orderly fashion all packets related to AIM chats. • Chat transcripts are grouped by the local participant’s IP address and then the remote participant’s screen name. • Modularized parser support with an abstract interface. Llama - A framework for rapidly designing and deploying light-weight web applications and other transaction-oriented protocols. • Includes highly scalable threading model, • JDBC based connection pooling system, • HTTP and SMTP implementations, • XML based database schema system for object-oriented SQL query generation, • and an abstract interface for defining database specific nuances with implementations for MySQL, Oracle, PostgreSQL, Sybase and SQL Server. • Based several substantial projects on this framework and licensed it to third parties. Mapster - Initially a personal project that was subsequently adopted by my then employer who desired a proof-of-concept for future projects. • Mapster includes utilities for downloading, parsing and importing the "raw" line-segment mapping data (such as the Tiger/Line Census Data) into a MySQL database. • Additional utilities ran optimizations on the line-segment data to greatly improve query performance. • Supported the drawing of roads, county lines, state borders, bodies of water and hundreds of other boundary types and landmarks, all in real-time. • Added support for tracking and displaying multiple, simultaneous input sources, such as a directly attached serial GPS device or a network-based feed, including on-screen telemetry data. • Implemented a canvas-based drawing method that used buffered 4-byte ABGR images, drawing each layer to a separate image, which images were then alpha-blended together, creating the final map. Pandora - Designed and implemented a network protocol and Java based framework for secure, anonymous and reliable communication across a completely distributed, fault-tolerant and self-optimizing TCP/IP based virtual network. • Pandora allows one to create a virtual network akin to a traditional VPN but without centralized structure and with guaranteed anonymity. • It was also necessary to implement the Blowfish (for encrypted communication) and Diffie-Hellman (for key exchange) algorithms, which was done so by referencing various online and printed resources. Triangulate - A proof-of-concept application. The concept is one related to being able to establish one’s exact location with only a receiver, using the transmission of known “beacons.” This involved the design of a communication protocol for the beacons to establish their relative positions to each other and for the receiver to determine its location using trigonometry. • Objects within the Java/Swing proof-of-concept application were draggable to simulate a real-world environment. • Demonstrated application and presented results, algorithms and protocols to client. XGroove - An X11 based network application (written for POSIX systems in C) for controlling multiple computers with a single keyboard and mouse. • XGroove also supports a copy-and-paste clipboard mechanism which follows the mouse (i.e., copy on one machine, paste on another). Additionally (very old stuff) - Implemented the client and server sides of the HTTP, DNS & ICMP, SMTP, POP3 and various other protocols. • The DNS resolver was implemented using the Java Native Interface (JNI) which allowed for ICMP packets to be sent/received via a raw socket. The library included functions for dropping root privileges after the socket was created. The DNS resolver itself implements its own result caching, which caching expires results based on their respective TTLs, • can automatically perform recursive resolves for MX lookups and other CNAME based DNS answers. • The HTTP server implements keep-alive connections, • gzip stream compression and • CGI input types GET, POST and multipart/form-data POSTs. Input parsing includes timeouts and strict buffer size limits to prevent malicious clients from hanging or flooding the server. • The SMTP client’s overall design and threading model allow it to sort and prioritize emails in a manner which maximizes its ability to deliver email quickly and efficiently. • The XML server module uses dom4j for xml parsing, which interface is chiefly used by the corresponding Flash client. The protocol supports binary file transfers within the XML stream through an OOB-style extension. [Certifications, Interests, et al] Technician Class - Received a perfect score on the FCC Amateur Radio Technician Class Element 2 exam on Jan 28, 2008 (KC2SUS). Mountaineering - 2006: Mauna Loa 2008: Ice climbing in Adirondack Park • Mt. McKinley via the West Buttress • Half Dome via the cables • Grand Canyon "Death March" 2009: Ice climbing in Adirondack Park • Mt. McKinley via the West Buttress • Mt. Rainier via Liberty Ridge • Grand Canyon "Death March" 2010: Cotopaxi • Cayambe • Mt. Shuksan via Fisher Chimneys • Mt. Baker via the North Ridge • Half Dome via the cables 2011: Ice climbing in New Hampshire; Ouray, CO • Mt. McKinley via the West Buttress 2012: Ice climbing in Adirondack Park; New Hampshire; Ouray, CO • Mt. McKinley via the West Buttress (May). Treasurer - Hope Presbyterian Church, 2004 - 2007; Christ Covenant Presbyterian Church, 2013 - Present.