Arizona Claude Edwards

Washington, DC

202 888 5614

arizonace@gmail.com

Skills

Skill

YoE

Engagement

Rating

Description/Keywords

C++

10 +

0,3,4,5,6,7,8,9,9,10,11,11,11,11,,,10,3,3,3,3,3,7,10,7,7,7,,,,,,

5

STL, ATL, MFC, also: FCL, C++/CLI, OWL, etc.

C#/DotNet

8

0,,,,,,,,,,,,,5,6,7,8,9,9,10,10,11,11,11,,,,,,,,,

5

Windows Forms, DLLs, Interop, Web ASP.NET

Python

3

0,,,,,,,,,,,,,,,,,,,,,,4,5,6,7,7,1,1,1,1,1,1

4

PEP-008, multiprocessing, .NET and C++ Interop

JavaScript

3

0,,,,,,,,,,,,,,,,5,6,6,,,,,,6,6,6,6,6,6,6,6,6

4

Web, Bloomberg Terminal, Node, Typescript.

Java/Kotlin

5

0,,,,,,,,5,,,,,,,,,5,5,,,5,5,,,,,5,6,7,7,7,7

4

Enterprise Java, Android, JNI, Web-Applets, Tomcat

Windows

10 +

7,8,9,10,11,11,11,11,11,11,11,11,11,10,10,10,11,10,10,10,10,10,11,11,,,,,,,,,

5

Since 3.0, Internals, SDK, GDI/+, COM/+

Web

5 +

0,,,,,,,6,7,,,,,6,7,,5,6,7,8,9,10,9,,,,,4,4,4,4,4,4

3

ASP.Net, HTML, JavaScript, CSS, Frameworks

Unix

3

1,2,3,,,,,,,1,1,1,1,,,,,,,3,3,3,3,4,5,6,7,1,1,1,1,1,1

3

AIX, Solaris, Linux; Darwin (MacOS), Bloomberg

Cloud

5

0,,,,,,,,,,,,,,,,,,,,,,,,,,,1,2,3,4,5,6

3

AWS, Infrastructure, Computing, Serverless, VPCs, CI/CD

Databases

10 +

5,6,7,7,7,10,2,,,,,,,7,8,9,8,9,9,10,10,10,10,,7,7,7,7,7,7,7,7,7

5

Design, DDL, Data Tier, SQL, NoSQL, Desktop

TCP/IP

3

0,,,,3,3,3,,,5,7,10,10,10,,,,,,10,10,10,,,,,,,,,,,

4

SSH, SSL/TLS; WS_FTP - fastest FTP client at the time

AWS

5

0,,,,,,,,,,,,,,,,,,,,,,,,,,,1,2,3,4,5,6

3

DynamoDB, SQS, EC2, S3, Lamda, CDK, Route 53, many ...

IPTV

5

0,,,,,,,,,,,,,,,,,,6,7,8,9,10,,,,,,,,,,

3

ASP.Net MRML to set-top-box, VHO integration

While I do not claim to maintain focused expertise in all the above simultaneously, I have a strong inventory of current and refreshable skills and solution finding experience. The table above is my attempt to estimate and depict for each skill my:

◇ accumulated experience; ◇ engagement over time; ◇ overall self rating.

I look forward to the opportunity to demonstrate my skills, and contribute positively to your organization. *Combined over time.

Aspects

Multi-Sector

Experience in Financial, Healthcare, Education, Defense, Internet, TV, and other industries.

Travel/Consulting

Traveling for trade shows, client meetings, collaboration, and recruiting.

User Experience

UX/UI designing, building, testing including for limited input devices such as phones and TVs.

Multimedia

Programming, encoding, decoding, and delivering image, video, and music formats.

Algorithms

Efficiently identifying and applying the appropriate algorithms and data structures.

Team Lead

Experience and recognition as team lead, principal developer, guide, and mentor.

low level coding

Coding at the bit level, endianness, protocols, layouts, MIL-STD-1553, Arduino, etc.

Education

References

BSc in Computer Science with Math Minor

Georgia State University

linkedin.com/in/arizona‑edwards#recommendations

Updated:  2025-01-14 Downloads and Versions 2025-01-14 Printed: 

Work Experience Summary

Amazon

Software Development Engineer II

Dec 2016 to Feb 2023

Developed cloud-based, large-scale financial microservices in Java, Kotlin, and AWS.

Bloomberg

Senior Software Engineer

Jun 2013 to Jun 2016

Developed enterprise data delivery solutions concerning fixed income securities in C++, Python, SQL, etc.

Georgia Tech Research Institute

Contract Programmer

Apr 2012 to May 2013

Developed software to test aircraft missile defense systems using MILSTD1553 in C++, C# and Python.

Alcatel-Lucent

Solution Line Manager

May 2009 to Mar 2012

Implemented software solutions for IPTV television and telephone service providers using C#, SQL, Java, etc.

AT&T

Contract Programmer

Jan 2007 to Dec 2008

Developed interactive IPTV software for the U-Verse platform in C#, JavaScript, and SQL.

Agile Technologies LLC

Contract Programmer

Jan 2006 to Mar 2006

Developed an Active-X control for Greyhound PackageXpress in C++

NextGen Healthcare Information Systems

Consultant

Jan 2005 to Aug 2006

Implemented regulatory and migration solutions for healthcare providers in C#, SQL, Excel, etc.

taxslayer.com

Senior Developer

Sep 2003 to Nov 2004

Developed online tax filing software in VB.Net, C# and SQL and using MSMQ.

Ipswitch

Principal Software Developer

Mar 1999 to Sep 2003

Developed versions of WS_FTP and other retail Internet software in C++.

Asymetrix

Contract Programmer

Jan 1997 to Feb 1999

Implemented online eLearning solutions for enterprises in ToolBook OpenScript, C++, etc.

Delta Airlines

Senior Contract Programmer

Jan 1996 to Nov 1996

Developed airline reservations system software in C++.

The Federal Reserve Bank

Contract Programmer

May 1994 to Dec 1995

Developed internal accounting and management software in C++ and SQL.

Nova Information Systems

Contract Programmer

Sep 1993 to May 1994

Developed ETL and analysis software for credit card transaction data in VB, C, and C++.

The Hypermedia and Visualization Lab

Multimedia Technologist

Jul 1992 to Aug 1993

Developed Computer Based Training and kiosk systems, maintained multimedia technology in the lab.

The Georgia Assessment Project

Solution Generalist

Jul 1989 to Aug 1992

Produced standardized tests for the state of Georgia.

Work Experience Details

Amazon

Dec 2016 to Feb 2023

Software Development Engineer II

2023

http://amazon.com

410 Terry Ave. North, Seattle, WA, 98109

USA: +1 (206) 266-1000

Organization:Teller Team, FinTech Organization, Finance Department.
Responsibilities:Design, implement and support a very-large-scale financial cloud-based application. Conduct interviews, code assessment and other hiring activities.
Languages:Java, Kotlin, JavaScript, others including Python, Perl, shell etc.
Methodologies:Agile/Kanban Scrums
Source Control:git
Platforms:AWS, Enterprise Java, Web, IntelliJ IDEA
Applications:

Amazon is a global technology, media, and retail company involved in a myriad of economic activities. Amazon operates at such a massive scale that ordinary business problems become computer science ones.

I used Java, Kotlin, and several AWS technologies (DynamoDB, SQS, Elasticsearch, Lambda, etc.) to develop cloud based services that were part of a very large-scale invoice-processing and accounting application. I used infrastructure-as-code to architect and deploy the service with multi-zone redundancy and data security.

I was responsible (primary service owner) for the Accounting service for a long time, partly due to my background in accounting. I delivered training sessions and wikis to the team and others on accounting concepts. I worked particularly closely with analysts and participated in workshops with other organizations to analyze their practices and translate their needs into software requirements.

I contributed to hiring, being involved in over 200 hiring decisions including travel to hiring events, interviews, phone screens, manual code assessments, and assessor training.

Highlights:

  • I participated in solving all the programming challenges expected in such a large global accounting system including effective terms date, time-zones, spanning accounting periods, discounts, payment scheduling, currency conversion, recoverable and non-recoverable VAT, tax withholding, partial payments and more.
  • Amazon accounting is done indirectly through a fairly complex system of models that map potentially intricate business activities to the also complex chart of accounts. I was involved in both modeling and writing code that did accounting via the models.
  • I designed and implemented a coordinated code and data migration of all services and clients of the application, from Elasticsearch to OpenSearch, that was executed with a minimal read only scheduled downtime.
  • I spearheaded and evangelized the use of Kotlin with the accounting service and within the Teller team because of the more concise way it allowed us to express our most typical basic operations.

Bloomberg

Jun 2013 to Jun 2016

Senior Software Engineer

2016

http://bloomberg.com

731 Lexington Ave, New York, NY 10022

USA: +1 (212) 318-2000

Organization:BVAL Team, Data License Department, Enterprise Solutions.
Responsibilities:Design, implement, and support enterprise data solutions regarding fixed income securities.
Languages:C++, Python, SQL, Fortran, JavaScript, ksh, bash, Excel, Hypersheet, XML.
Methodologies:Agile/SCRUM, Waterfall.
Source Control:git, RCS, Bloomberg proprietary, Phabricator
Platforms:AIX, Solaris, Linux, Bloomberg Terminal
Applications:Exceed On Demand, Atlassian Confluence & Jira, Bloomberg proprietary

Bloomberg LP is an international financial information services and news gathering company. Data License is a $750M/yr enterprise platform that delivers collated Bloomberg data to enterprise clients as files. The BVAL Team specializes in fixed-income securities and regulatory data within Data License.

I designed, implemented, and supported enterprise data solutions regarding fixed income securities. I programmed mostly in and for the Unix command line environment, primarily in C++, SQL and Python, along with Fortran, JavaScript, shell languages and many Bloomberg proprietary technologies. I did user interface development, working on several screens in the Bloomberg Terminal, including customer facing screens. Senior Engineers at Bloomberg are expected to be or become competent in any language or technology necessary for all aspects of their projects. I was substantially involved in and responsible for database design and programming, feasibility and technical reviews, coding, all stages of testing, documentation, sign off if required for UX/security/compliance, phased rollout, configuration, and ultimately support. At times I was also in rotation as a support on-call, with the possibility of being somewhat always on-call in exigent circumstances, or if the scheduled on-call was not reachable.

Highlights:

  • I developed and enhanced several applications to collect data about financial instruments (securities) from various instantaneous pricing sources both internal and external to Bloomberg and collate them into files that are delivered to clients.
    • The data gathering and delivery systems on which I worked, consisted of many instances of many interoperating bits of software across distributed systems. Market driven changes in our product constantly required new applications as well as enhancements to existing ones.
    • I worked under the implicit requirement for space and time efficiency. Bloomberg data files are typically very large, often containing several hundred fields and potentially millions of rows.
  • I developed and enhanced parts of the "snap-shot" infrastructure that captures market data as of certain critical moments, particularly closing times for major market centers around the world including New York, London, Tokyo, and Australia.
    • The infrastructure maintains a pipeline of customer requests respecting enforced delays, time embargoes, customer entitlements, customer portfolios, and customer preferences.
    • I also developed and enhanced some of the software to monitor the workflow from customer request to customer retrieval.
  • I developed and enhanced applications to perform quality control of our data, including day-over-day differential checks and formatting checks.
  • I was the principal software engineer on the project to migrate the product we deliver to the Philadelphia Federal Reserve from an older custom infrastructure into the main Data License infrastructure.
    • Quality control for this project included format and value comparison of a wide spectra of fields for millions of securities without any metadata. I was able to validate the contents of each field against information derived from the whole file.
    • I was also the principal software engineer in projects to provide the Fed with sample data to answer RFPs for new products under my team's responsibility.
  • I was one of the key developers on a project migrating several classes of mortgage securities from Bloomberg Generic pricing (BGN) to the more accurate Bloomberg Valuation (BVAL) pricing.
  • I developed functionality to configure and manage customer entitlement to orthogonal categories of both securities and fields. Data gathering programs needed very efficient access to customer entitlement and usage for every piece of data written to a file. Field entitlements vary from one security to the next

Georgia Tech Research Institute (GTRI)

Apr 2012 to May 2013

Contract Programmer

2013

http://gtri.gatech.edu

400 10th St NW, Atlanta, GA 30318

USA: +1 (404) 894-7325

Organization:Electronic Systems Laboratory (ELSYS), http://www.gtri.gatech.edu/elsys
Responsibilities:Develop and enhance software to simulate and test airborne-survivability missile-defense systems. Direct and mentor student interns.
Languages:C++, C++/CLI (Managed C++), Python, C#, C
Methodologies:
Source Control:MKS Integrity (now PTC Integrity)
Platforms:MFC, Arduino
Applications:

Georgia Tech Research Institute (GTRI) is a leading research institute with international presence providing solutions for government and industry.

I was a key implementer of several successful electronic warfare projects primarily using C++ (regular and CLI), Python, and C#, the revenue for which was in the tens of millions of dollars. I directed and coached the two student interns on my project, and indirectly provided additional mentoring to other student interns. I conceived of and successfully implemented a small hardware project with integrated circuits (ICs) and electronic components.

Highlights:

  • I developed and enhanced applications to monitor and control communications between devices over a MILSTD1553 serial interface and display real-time visualizations of the traffic.
    • My object-oriented data model allowed very flexible design and implementation of multiple views of the protocol analysis of each type of packet, ranging from visual depictions of elements in the aircraft dashboard, down to raw data, all the way down to individual bits.
    • I used code structure, self documenting code, and the .Net reflection capabilities of Managed C++ to extract metadata about the meanings of bits and bit sets so that even in hexadecimal and binary raw data views, I show tooltips with interpretive information when the mouse hovers over data.
    • When communicating with devices on the serial bus, the program can act as bus master or slave, it can emulate the aircraft control system, it can capture traffic, it can playback one side of a captured conversation and monitor/capture the other, and it can control playback of PIR and RADAR sensor data captured during real events in real aircraft.
    • I developed and enhanced software to control a PCI card that can capture multi-channel PIR data from the system's optical sensors and can playback recorded sequences to the central processor during testing. This software communicates with the card using PCI FIFO channels mapped to virtual memory addresses.
  • I designed and developed an AN/APR-39 (Radar Warning System) simulator that could communicate with a physical AN/AAR-47 (Laser Warning System) and emulate and test the protocols for startup, version detection, and control/display integration for aircraft with both systems.
  • I designed, prototyped, and programmed an Arduino based device in a nicely enclosed, externally-powered breadboard package with RS485 over USB connectivity. The device controlled several relays and switches via GPIO including the main power to the test rack. I was assisted in this project by my own interns and an electrical engineering intern. This allowed the test software to control the physical configuration of the test rack, reducing human intervention, improving reliability, and enabling long-running overnight test suites.
  • I Developed auxiliary servers and libraries using C++ and C# along with Python interface classes so the binary applications could interoperate with Python in the test framework.

Alcatel-Lucent

May 2009 to Mar 2012

Software Architect/Solution Line Manager

2012

http://alcatel-lucent.com

800 North Pointe Pkwy, Alpharetta, GA 30005

USA: +1 (770) 750-2339

Organization:Multimedia Integration Division, IPTV Application Architecture
Responsibilities:Design, prototype, develop, demo, certify, and deploy IPTV integration software and interactive multimedia software for Telcos and utility companies seeking to provide and enhance IPTV television and mobile services using Microsoft Mediaroom.
Languages:C#, Mediaroom Markup Language (MRML), SQL, Java, others.
Methodologies:
Source Control:Subversion (SVN)
Platforms:ASP.Net, Presentation Framework (PF), Android, SQL Server
Applications:

Alcatel-Lucent is a global telecommunications corporation with a strong presence in the global IPTV (broadcast television based on IP technology) industry. Our customers included some of the largest IPTV broadcasters in the world including AT&T, SingTel and Portugal Telecom.

I performed a broad range of software development activities including software architecture, visual design, coding, prototyping, technology evaluation, business development, demos, trade shows, training, acceptance testing, and deployment. I coded primarily in C# and Dot Net but also did web, JavaScript, Java, and database programming. I primarily developed code targeted at the television-connected, interactive set-top-box which the user controls via handheld remote. I also developed code for other targets in the integrated platform including IPTV back end servers in the VHO, web servers inside and outside the VHO, and Android. Products included Caller ID and Call Handling, Voicemail, Remote DVR, Mobile-RDVR, Instant Messaging, Weather, Fitness Instruction, Movie listings, Yellow Pages, Facebook, Pandora, Flickr, casual games and others.

Highlights:

  • Domestic and International Travel. I travelled to Poland, India, Singapore, England and to many cities in the United States for a variety of software lifecycle activities including: customer pre-sales support, demos, installation, user acceptance testing, and industry trade shows, as well as meetings with partners, development teams, and other business units.
  • Software Prototyping and Pre-Sales support. I created several software prototypes and proofs of concept for the set-top-box including a Pandora client using REST and OAuth, an app to browse movies at nearby cinemas, and an Instant Messaging client.
  • I created an Android application to showcase our RDVR, VOD, EPG, video playback and Mediaroom integration at trade shows and client visits.
  • I was a key developer in the architecture and development of one our flagship products which was a mediation layer that among other things, allowed a single Mediaroom instance to be partitioned among multiple service providers via web services using federated authentication along with comprehensive web method authorization.
  • I created an website in ASP.Net to demonstrate the ability to securely log in as one of several different broadcasters and separately manage media, subscribers, channel lineup etc. The website provided fully journaled and audited role-based management of the underlying Mediaroom instance.
  • Development Team Liaison. Most of our development took place outside the USA in distant time zones (primarily Poland and India, and some in England). I acted as a local liaison to the development teams for local managers, customers and deployment teams.
  • I maintained a Mediaroom lab in which I kept recent versions of the software and operating systems in use so I could quickly test reported customer bugs and deployment problems and relay information to the developers and other deployment teams.
  • Deployment. I travelled to customer sites to work directly inside their VHOs (Video Head-end Offices), labs and data centers and with their engineers to deploy and configure our software products.
    I installed and configured Windows Server 2008, Windows Server 2008 R2 and Linux on rack servers, blade servers and VMs. I installed and configured SANs, Multi-Path I/O, Database clusters, Windows clusters, Windows domains, Mediaroom servers, and custom software in various network architectures.

AT&T

Jan 2007 to Dec 2008

Contract Programmer

2008

http://att.com

725 W Peachtree St NW, Atlanta, GA 30308

USA: +1 (800) 331-0500

Organization:AT&T Labs, Video and Converged Services, Exploratory Application Development
Responsibilities:Prototype and develop IPTV multimedia software for the U-Verse platform.
Languages:C#, Mediaroom Markup Language (MRML), JavaScript, SQL, C++
Methodologies:
Source Control:Subversion (SVN)
Platforms:ASP.Net, Oracle, DirectShow
Applications:

AT&T, a Fortune 500 company with a strong history in communications and broadcasting, performed the first long-distance television transmission in 1927.

I developed and enhanced prototypes of on-screen, customer-facing, interactive IPTV applications that run directly on the Set-Top-Box. Technologies used include C#, ASP.NET, Oracle, SQL, JavaScript, C++, DirectShow, and the Windows Media SDKs.

Highlights:

  • I developed the Preferences section of the U-Verse Weather application, including the database design, database programming, and capacity planning. This section of the application stores the user's home city, favorite cities, and other user specific preferences. I used C#, ASP.Net, Oracle, PL/SQL, and JavaScript with Ajax.
  • As part of a team, I collaborated closely with our information architects and other developers to create solutions that address the challenges of television applications. The key difficulties we mitigated were:
    • Entering text and navigating a UI with a hand-held remote.
    • Visual display elements that looked acceptable on a wide variety of display technologies and qualities.
    • The user's implicit expectation of the same level of reliability from integrated apps as their television service, much higher than expected from Internet service, or SmartTV apps.

Agile Technologies LLC

Jan 2006 to Mar 2006

Independent Contractor

2006

http://www.agiletech.com

400 Perimeter Center Terrace Ste 145, Atlanta, GA 30346

USA: +1 (678) 579-9068

Organization:
Responsibilities:Develop an Active-X control for Greyhound PackageXpress, for Greyhound Lines Inc.
Languages:C++, JavaScript, HTML
Methodologies:
Source Control:Subversion
Platforms:Windows 98, Visual Studio 6, IE6
Applications:

Agile Technologies provided consulting and application development services to clients.

Greyhound PackageXpress allows retail customers to ship packages via Greyhound bus lines. Agile developed a J2EE web application to allow ticket agents to accept packages and charge customers for shipment. The ticket agents used workstations attached to a luggage scale, a receipt printer, a regular printer, and a debit card PIN pad, along with other peripherals. My job was to write an Active-X control to allow the web application to communicate with the luggage scale via the parallel port and the debit PIN pad over the serial port.

The project was an exercise in retrograde and unsupported environments; asynchronous serial and parallel port communications; multi-threaded, semi-persistent COM objects; HTML; and JavaScript.

Challenges overcome for this project include:

  • A retrograde and unsupported hardware environment. Due to external limitations, the platform was restricted to IE6 on Windows 98 on older computers, with older UARTs. Active-X was the only feasible client side technology available.
  • A retrograde and unsupported development environment. Due to additional limitations, the control could not be pre-installed and had to be configured to auto-install on demand over-the-web with limited user interaction. I developed the control as a single, signed, self-registering, Active-X DLL. The HTML host wrapper declared it via CLSID/GUID with a codebase URL for auto-installation. A signature from a trusted authority allowed for minimally intrusive self installation.
  • The luggage scale's parallel port protocol was asynchronous and extemporaneous. The scale had a non-negligible bounce during which time it continued reporting weight values over the parallel port. I had to make my own determination of the stable weight. The weight displayed on the page was updated but not reported to the backend until it had stabilized. Of course the user could meanwhile be interacting with the page in any way.
  • IE6 hosts Active-X controls strictly in a single-threaded-apartment (STA) where the context and lifetime are tied to the webpage. The control needed to create and manage separate multi-threaded-apartments to create the multiple threads needed to maintain semi-persistent asynchronous communications with the parallel port. The control had to manage its own serialization and synchronization with the main STA, which was tricky because Windows/IE6 has its own separate mechanism for serializing the control's STA.
  • Communicating with the PIN pad was synchronous and more reliable, but navigating the handshaking and security protocols was more complex and time consuming. Testing was limited to a fixed set of predetermined interactions supported by the pad in test mode.
  • I authored the control's documentation in HTML and JavaScript.

NextGen Healthcare Information Systems

Jan 2005 to Aug 2006

Consultant

2006

http://nextgen.com

3340 Peachtree Road NE, Suite 2700, Atlanta, GA 30326

USA: +1 (404) 467-1500

Organization:NextGen Consulting Services
Responsibilities:Design and develop custom solutions for healthcare industry clients, primarily in the areas of data migration and regulation compliance. Maintain HIPAA compliancy.
Languages:C#, VB.Net, SQL, XML, HL7, Microsoft VBA, Excel, Access, others.
Methodologies:
Source Control:Visual Source Safe
Platforms:SQL Server, MSMQ, Microsoft Office, Crystal Reports, Infragistics
Applications:

NextGen is a Microsoft Gold Partner in the Healthcare industry that develops Electronic Medical Records (EMR) and Enterprise Practice Management (EPM) software for health providers and health agencies. NextGen Consulting Services provides customer specific solutions in data migration, report generation and workflow automation.

I developed custom solutions to help several new customers convert their health care and accounting data from other software formats into NextGen formats. I wrote programs to generate various regulatory reports from customer databases. I programmed extensively in Excel using both macros and VBA, as well DotNet Interop for Microsoft Office using C# and VB.Net. I travelled to client sites to observe workflow, determine requirements, and demonstrate solutions.

taxslayer.com (as Rhodes Financial Services)

Sep 2003 to Nov 2004

Senior Developer

2004

http://taxslayer.com

3003 TaxSlayer Drive, Evans, GA 30809

USA: +1 (706) 868-2333

Organization:Online Filing Website
Responsibilities:Design and develop parts of the www.taxslayer.com website. Design and develop web and email interfaces and high-reliability workflows around interactions with the customer and with the IRS. Provide phone support to customers during tax season.
Languages:VB.Net, SQL, C#, XML
Methodologies:
Source Control:Perforce
Platforms:ASP.Net, SQL Server, MSMQ, Microsoft Exchange
Applications:

TaxSlayer LLC is a multi-faceted family of corporations that sells several tax and financial products, in addition to being a retail tax preparer and operator of the popular online tax filing website, taxslayer.com.

I worked primarily on parts of www.taxslayer.com, the company’s online filing website using VB.NET, ASP.NET and SQL Server. I wrote code to dynamically generate the web forms required for each state from metadata about each state’s tax forms. Dynamically generated controls that maintain ViewState, that respond to client side and post back events, that persist data according to schema and metadata, and that validate data both client side and server side required an in depth knowledge of the ASPX page lifecycle and post back data.

I wrote auxiliary processes and services in C# using MSMQ, XML, and Exchange.

I provided phone support to customers during tax season. In addition to researching software glitches and answering questions about operating the software, I learned the answers to more common tax questions on the job and had access to tax experts for more serious questions.

Ipswitch

Mar 1999 to Sep 2003

Principal Software Developer

2003

http://ipswitch.com

83 Hartwell Ave, Lexington, MA 02421

USA: +1 (781) 676-5700

Organization:WS_FTP Development Team, Augusta GA Office.
Responsibilities:Design and develop features and versions of WS_FTP and related software. Participate in the UI design and architecture of other products.
Languages:C++
Methodologies:
Source Control:Visual Source Safe
Platforms:FTP, TCP/IP, SSH, TLS/SSL, PKI, COM, ATL, Windows
Applications:

Ipswitch made and sold retail Internet software including file transfer software such as WS_FTP and network monitoring software such as What's Up Gold.

I worked on several versions of WS_FTP, the most sold FTP client in the world. In particular, I was responsible for and developed the FTP engine for version 7, which has remained mostly in place to date. WS_FTP included extensive work in sockets, TCP/IP, FTP, Windows, and C++.

Highlights:

  • My goal for version 7 was to make my FTP engine the fastest in the world. I achieved that goal against all known products available for comparison.
  • The UI remained instantaneously responsive at all times even while doing things that caused most apps including Finder and Explorer to freeze for several moments. Even back in 2002, on computers with a fraction of a gigabyte of memory, the program comfortably sorted, displayed, and operated on folders with over a million files.
  • To implement a rich modern FTP client, I had to understand and implement many Internet RFCs, and overcome many challenges endemic to the protocol in a modern environment, such as firewalls, encryption, NAT traversal, non-routable addresses, and Port and Passive callbacks.
  • I delved deeply into the Windows SDK; GDI; GUI; shell integration; resource management; internationalization; threading; thunking; algorithms; memory usage; performance; persistence; COM; ATL; SSL; SSH; PKI; digital signatures; key exchange; encryption, and secure sessions.
  • I helped to maintain and administer test environments of FTP and SSH servers on Windows and Linux.
  • As a principal developer, I travelled to and participated in company design and architecture meetings, as well as product feature and strategy meetings.

Asymetrix

Jan 1997 to Feb 1999

Contract Programmer

1999

http://www.asymetrix.com

Organization:Online eLearning division, Southeast USA Region.
Responsibilities:Develop computer based (CBT) and web based (WBT) training and testing applications, primarily using Asymetrix ToolBook, OpenScript, and supporting technologies. Travel to meet with clients and development partners.
Languages:OpenScript, C++, C, Java, JavaScript
Methodologies:
Source Control:CVS
Platforms:ToolBook, Active-X/OLE, Internet Explorer, NSAPI, Netscape, ATL/COM, Windows
Applications:

Asymetrix specialized in eLearning and produced ToolBook, a scriptable authoring platform with hypermedia and multimedia capabilities, reminiscent of HyperCard. Asymetrix also provided consulting services, using ToolBook to produce training materials for customers.

Working with information architects and artists, I developed several training applications and websites using ToolBook, HTML, JavaScript, C/C++, Active-X, and Java. I coded projects for American Airlines, Union Camp, ADP, Bank of America, Fidelity Investments, Los Alamos National Labs (LANL), and others. Development contracts were under strict time and budget constraints. I travelled to and participated in design and strategy meetings.

Highlights:

  • I created an Active-X control along with a corresponding Netscape plugin and a Java applet that simulated a Sabre® terminal in the web page. It emulated all the usually mapped keys of the terminal along with on-screen status indicators. It allowed the ticket agent the same control of the cursor and tabbing between fields, and allowed interaction with fields other than the correct intended field for the question. It simulated server round-trip updates for both correct and incorrect answers.
  • I created an Active-X control along with a corresponding Netscape plugin and a Java applet that simulated an interactive airline ticket. It displayed a picture of a ticket, with configurable data in the fields. The user could navigate between and choose fields, and edit the contents of fields.
  • I created pixel-perfect sample quizzes for Microsoft Word and Excel using ToolBook. The tests requested the candidate to accomplish tasks using menus and shortcut keys. The tester wanted the candidate to have access to the full menu and all shortcut keys so they would not be prompted to the correct answers by limited choices. I took screenshots of all the menus and submenus in Word and Excel, and simulated the menu system in ToolBook complete with mouse tracking, highlighting, sub-menu popups and keyboard accelerators. I wrote most of the painting code in a C DLL which I called from ToolBook scripts. I was also able to simulate limited functionality of some other features such as cut and paste (of specific text - not arbitrary text) but including full emulation of modifier keys for copy vs move with caret and cursor indication.

Delta Airlines (as Transquest, Inc)

Jan 1996 to Nov 1996

Senior Contract Programmer/Team Lead

1996

http://delta.com

1030 Delta Blvd, Dept 982, Atlanta, GA, 30354

Organization:Software Development Team for Magellan™ Reservations System
Responsibilities:Design and develop parts of a new Windows based front end to Delta’s reservations system - working name “Reservations of the Future” (ROF). Mentor and guide Delta employees including some that had been retrained in software development.
Languages:C++, SQL
Methodologies:
Source Control:Visual Source Safe
Platforms:Borland’s Object Windows Library (OWL)., Delta propietary.
Applications:

Transquest was a software development subsidiary of Delta Airlines.

I was a team lead on parts of Magellan™, a new Windows based front end to Delta’s reservations system, written in C++ and SQL, and communicating via TPF.

The Federal Reserve Bank - Atlanta (FRB)

May 1994 to Dec 1995

Contract Programmer

1995

https://frbatlanta.org

1000 Peachtree St NE, Atlanta, GA 30309 (since 2001)

USA: +1 (404) 498-8500

Organization:IPAPS (Integrated Purchasing and Accounts Payable System)
Responsibilities:Design and develop new applications and features. Enhance and improve existing applications. Gather requirements and train users. Develop reusable, low level, Windows UI elements (controls).
Languages:C++, SQL, C
Methodologies:
Source Control:Visual Source Safe
Platforms:MFC, Sybase, SQL Server, Windows
Applications:

The Federal Reserve Bank (FRB/The Fed) is an instrumentality of the United States Federal Government that oversees the economy and banking system.

I engaged in a wide range of activities including user requirements gathering, design, user training, code maintenance, and new development in C++ and SQL. My primary project was on a large integrated accounting suite. In particular I was the key developer on the Inventory Management application and I developed many of the shared DLLs used by other parts of the suite. I received several internal commendations for excellent work.

Highlights:

  • I designed and implemented an efficient program to solve a challenging accounting problem that equitably allocated funds orthogonally and hierarchically between various departments, accounts, and projects without losing or gaining pennies. I was able to do this rapidly and correctly despite previous failed attempts by others because of my strong understanding of data structures and algorithms.
  • I developed a check-printing program that communicated with a secure magnetic ink (MICR) printer via its secure protocol. The program converted and spelled out the dollar amount in words on the check.
  • I developed a code strategy for generating dynamic SQL in situations where the equivalent stored procedures contained too many code paths to be maintainable.
  • I developed a query technique to load and display large result sets achieving apparent sub-second latency for queries that had often taken more than a minute.
  • I developed custom data controls for viewing and quickly scrolling through large result sets. My controls were noticeably much more responsive and efficient than the Windows 3.1 controls available at the time. Using simple animation principles, I based the number of fields in dynamic queries based on how fast the scroll position was changing.
  • I created several custom controls and Window classes that emulated the Windows 95 look and feel in the Windows 3.1 environment, including, buttons, checkboxes, property pages, scrollbars and sliders. This required implementing several features at the Windows SDK level in C, including window message loops, tabs, arrow keys, accelerator keys, navigating between sibling, parent and child windows, mouse handling and capture, hit tests, client area and child window management, and of course painting.

Nova Information Systems (now Elavon)

Sep 1993 to May 1994

Contract Programmer

1994

http://elavon.com

Two Concourse Parkway, Suite 800, Atlanta, GA 30328

USA: +1 (678) 731-5000

Organization:Software R&D
Responsibilities:Parse, analyze, and store (ETL) credit card transaction data from various bank formats. Design and develop client-server applications for customer-service inquiries from merchants, and to detect merchant fraud. Negotiate design requirements and features with users and management.
Languages:C++, VB, C
Methodologies:
Source Control:
Platforms:Windows, Paradox Engine
Applications:

NOVA Information Systems (NOVA) was and still is one of the larger credit card processors in the US.

I designed and developed client-server applications for customer-service inquiries, and to detect merchant fraud. I was able to meet the very challenging expectation of having the parsed information loaded, indexed and ready for customer service inquiry within an hour of receiving a bulk data file. This would have been impossible without using non-traditional, low-level wizardry. I had regular meetings with customer service and fraud monitoring agents to negotiate requirements and features. I was able to use VB to rapidly generate the user interfaces, while I used C/C++ to access the forms and perform the business and data model logic.

Highlights:

  • I generated custom formatted reports in C++ using the GDI directly. My reports supported typical modern formatting features such as font styles, pagination, repeated headers, column alignments, row grouping etc.
    • Such reporting functionality is now typically implemented using controls or libraries such as SSRS or Crystal Reports which I have used in subsequent jobs.
  • I used efficient data structures and algorithms to analyze large volumes of transaction data to find suspicious events using criteria designed by the fraud monitoring team.
    • My data analysis identified which criteria were most effective, and discovered new parameters for monitoring.
    • I was able to provide this feedback to the fraud team, and incorporate changes as necessary.

The Hypermedia and Visualization Laboratory (HVL)

Jul 1992 to Aug 1993

Multimedia Technologist

1993

http://hvl.cs.gsu.edu/hvl/

Georgia State University, Atlanta, GA 30303

USA: +1 (404) 651-2245

Organization:Georgia State University, Department of Mathematics and Computer Science.
Responsibilities:Develop Computer Based Training and kiosk systems for government and military clients. Install, evaluate, and maintain multimedia hardware and software in the lab. Create and perform demos, and mentor students.
Languages:C, shell scripts, application scripting languages
Methodologies:
Source Control:
Platforms:AIX, Irix, Windows, Macintosh, Renderman, Autodesk; Multiple pre-web hypermedia authoring applications with hypertext/hyperlink and HyperCard like capabilities.
Applications:

In addition to its contributions to the NSF educational repositories on computer graphics, and to the proceedings of ACM SIGGRAPH, The Hypermedia and Visualization Laboratory (HVL) at Georgia State University created educational and informational hypermedia solutions for external clients.

On projects for external clients, my responsibilities included coding, video and audio capture and conversion, and weaving together media, text and hyperlinks into the instructional narrative. I operated and maintained the lab hardware and software. I purchased, installed and tested new technology including sound and video capture cards, video recording devices, video authoring software, multimedia authoring software, input devices, memory and hard drives. We were an early adopter of Intel Indeo and used their hardware and encoders in our projects. I mentored students and provided project and technology demos to clients and visitors. I completed several other small programming projects for clients and for internal use of the HVL. I wrote several utilities to create and operate on bitmapped file formats.

Highlights:

  • I was a principal software developer on a 2-screen multimedia kiosk for the Army Research Lab DoD Supercomputing Resource Center which allowed the user to navigate a map of the premises on a computer monitor with a joystick, while viewing a synchronized video walkthrough of the route on an attached video monitor.
  • I was a principal software developer on a hypermedia training system for the City of Atlanta's water treatment plant. The HVL published a paper about this project here: The development of a hypermedia training system for a water treatment plant.
  • I wrote an application to control a single-frame video recorder to record ray-traced animations that were too detailed to be rendered in real time.
  • I wrote a program to create a video animation from experimental data in a paper published by a department professor about using fractals to visualize convergent series. The professor presented the paper and the video at ACM SIGGRAPH '92 in Anaheim which I also attended courtesy of the math department. I was publicly credited for animating the visualization. The paper is available here: The use of fractals in visualizing iterative techniques from numerical analysis.
  • I wrote an experimental HyperMedia viewer that navigated between scenes very quickly relative to current technology by saving and reusing the unpacked raster data stored in the device dependent bitmap (DDB) structure that Windows creates when it unpacks a bitmap file.
  • Notably, I worked with innovative hypertext web browsers and authoring systems that existed before the advent of the eventually popular HTML/Internet based World Wide Web.

The Georgia Assessment Project (The GAP)

Jul 1989 to Aug 1992

Solution Generalist/Student Assistant

1992

Georgia State University, Atlanta, GA 30303

USA: +1 (404) 651-2245

Organization:Georgia State University Department of Education; Georgia Department of Education.
Responsibilities:Use technology to support the workflow of producing standardized tests for the state of Georgia. Perform document production, desktop publishing, network administration. Create software for statistical analysis, network and file system maintenance, file conversions, and workflow automation.
Languages:Pascal, C, C++, Xerox OpenScript, DOS Batch files, A little Ada, application macros such as WordPerfect, Lotus 123 and Borland Quattro.
Methodologies:
Source Control:
Platforms:Xerox 8010 (Xerox Star), XNS, Novell, Windows, Paradox.
Applications:

The Georgia Assessment Project was a test development organization affiliated with Georgia State University, the Georgia Department of Education, and ETS.

As a solution generalist, I used many platforms, applications and languages, but of note, I started on a Xerox 8010 (the original Xerox Star) forerunner to GUI systems such as Macintosh and Windows. 1989 - 1992 was a dynamic period and the work environment evolved through many changes in computing platforms, languages, and network technologies. In a document production role, I used publishing software to enter and format standardized tests including Teacher Certification Tests (TCT), Curriculum Based Assessment, and other tests for the State of Georgia.

I was assistant Network Administrator for our Novell Network, and for a time the acting Network Administrator.

I programmed in Pascal, C, C++, Paradox, batch files and application languages such as WordPerfect to support the test development, statistical, and administrative workflows.