Resume of Greg Thatcher,
San Francisco, California

Send me an email

Languages: C#, ASP.NET (MVC and Web Forms), Python, Azure, Javascript/JQuery, WPF, XAML, PowerShell, Azure CLI, Angular, WinForms, SQL, HTML, CSS, MongoDB, CosmosDB

1/2018-Present: Senior Software Engineer, Windows SDK Vungle: Single-handedly implemented features in Windows SDK (other teams had 4-7 members). Implemented various features (new Ad formats, caching schemes, data collection schemes) in our Windows SDK. Managed our Jenkins build servers. Created various test apps for internal and Windows store use. As a "team lead", I also participated in technical design to ensure all three platforms (iOS, Android, and Windows) implemented new features consistently.

5/2017-11/2017: Senior Software and Systems Engineer, Savonix: Setup automatically deployable Azure Architecture of multiple IAAS machines (Ubuntu, CentOS), Redis, MongoDB, CosmosDB, etc. in a secured, scalable network. Wrote various Powershell, Azure CLI, Python, and C# scripts and programs to manage and create Azure IAAS Architectures in different countries, and manage and troubleshoot Azure AD. Created R scripts and graphs for data analysis.

4/2016-3/2017: Senior Software Engineer, ThinAir: Created C# Outlook AddIn and WIX installer. Created custom C# SharePoint IRM (Information Rights Management) dll which encrypted and decrypted SharePoint documents as they were uploaded and downloaded using ChaCha20 and AES encryption. Created HttpModule in C# for SharePoint which renamed ThinAir encrypted files on download. Setup on-premises Active Directory domain in Azure (IAAS) with Microsoft SCCM and 30 Windows client machines; configured client machines using Group Policy and SCCM to automatically install ThinAir software, automatically login as a test user, and load-test ThinAir product, simulating hundreds of users. Wrote various WPF/C# apps and Powershell scripts for internal use.

10/2013-3/2016: Senior Software Engineer, Aspera (purchased by IBM): Integrated Aspera's high-speed data transfer technology into SharePoint 2013 (on-premises) and Office365 (Sharepoint Online) using a hybrid Provider-Hosted/SharePoint-Hosted App. Implemented Remote Web as an ASP.NET MVC web application supported by a Windows Service, communicating via WCF and Web API. Implemented custom SharePoint Search solution. Installed and administered various SharePoint 2013 Farms (development, test, demo). Implemented various Admin web pages and Rest Services utilizing CSOM, JavaScript, JQuery, Ajax, REST, Web Api, C#, etc. Configured, coded, and troubleshot various authentication schemes including Azure AD, WS-Federation, Azure ACS, STS, Active Directory, etc.

9/2012-9/2013: Co-Founder, Lead Developer, Reprise Apps: Developed Outlook Add-In using WPF, C# and SQL Compact Edition; developed Website and Web Services on Azure and Microsoft SQL Server; created installer and build system using Advanced Installer and PowerShell; Created a weekly mailing system using Windows Azure Service Bus and Office 365.

12/10-9/2012: Senior Software Engineer, LiveLoop (purchased by Microsoft): Developed PowerPoint Add-In with TaskPane using WPF, C#, Expression Blend, IDTExtensibility2, IRibbonExtensibility, and ICustomTaskPaneConsumer; developed interop between .Net and Python; developed Windows MSI installer; developed complete ASP.Net website with user registration and dynamically generated, customized (per user), signed installer download WebForm; developed Windows Shell extension; ported website to Azure.

2/08-12/10: Senior Software Engineer, Xobni (purchased by Yahoo): worked on various features of Xobni, an Outlook plug-in, using C#, WinForms, and ASP.Net Web Services; Developed Xobni's AutoSuggest, a replacement for Outlook's email suggestions; developed InspectorX, a program for diagnosing customer problems; Developed the "Problem Notification Feed", a mechanism that notifies customers of system configuration problems, incompatibilites with 3rd party applications, and data corruption.  Developed Xobni Controller, an enterprise solution for deploying Xobni via Active Directory and Group Policy;  Integrated Skype functionality into Xobni; worked on Trivia Manager; created a Tracking Manager system, an api that developers can use to send back stats from Xobni installs. 

6/05-2/08: Senior Software Engineer Prosper Marketplace, Inc.: Various C#, ASP.NET, Web Services, WinForms, Windows Services, SQL Server 2000 projects; Created system for initiating bank ACH, wire, and checks via XML and NACHA file formats; created system for authenticating and pulling credit profiles from Experian; created system that generated monthly account statements in PDF format for customers; created composite custom control for instant account verification via Yodlee, created system to submit 1099s to Fed and State, created system for sending weekly XML files to Collection Agencies, created system for sending Metro2 files to Credit Bureaus (Experian and TransUnion), wrote various applications to read, generate and modify Excel spreadsheets.

7/03-6/05: Contract Programmer, Cole Valley Group: Programmed in ASP.Net and ASP, administered IIS, and managed SQL Server 2000 database for SFSOS website and opt-in mailing list, managed various other website and databases, ported websites to new machines at new ISP, debugged and fixed various Active Directory/C#/SQL Server performance problems on Browsercam.

7/02-6/05: Contract Programmer, AdvisorSites: Using Perl and C,. created Milter/Sendmail/Unix email archiving system to help financial advisor customers comply with Sarbanes-Oxley requirements.  Created MFC application to allow customers to download and view archived mail.  Various IT and programming tasks including Sendmail and SASL configuration, security audits, implemented web-based administrative screens, etc.  Wrote system which searched email text and attachments (PDF, Excel, Word, etc.) using Google-like algorithm for finding words and phrases "near" each other using MySQL back-end. 

8/94-6/05 (Contracts at various companies listed below):
  • Sun Microsystems: Java/RMI/JDBC/Sybase developer
  • Netmarketmakers: Contract ASP, Javascript, COM (C++) programmer, Microsoft SQL DBA, NT & IIS Admin
  • net.world/Cresta Systems: Contract ASP, Javascript, DHTML, SQL, Perl, C++, COM programmer; SQL DBA, IT Admin
  • Turner New Media: Wrote "The Jetsons Game", "The Jello Screensaver", "The Johnny Quest Game". (AOL Keyword: Cartoon).
  • Broderbund: Wrote a Web version of a segment of "Koala Lumpur" game; Created demo CD of "The Last Express" game.
  • Mindscape: Wrote the client Windows application for the first version of ChessmasterOnline in MFC/C++/Win32
  • Foote, Cone, and Belding: Wrote various screensavers for Levis, Nabisco, Chivas in C++/Win32
  • Nickelodean Online: Wrote "The Crank", a digital comic book player in C++/Win32 (AOL Keyword: NICK).
  • Sega Online: Wrote a Shockwave, a Java, and a C++ Football game.
  • The Monster Board: Wrote the Monster Board Screensaver (www.monster.com).
  • SegaSoft/Sega of America: Contract Perl, C++, Java, SQL programmer
  • WindowChem Software/ChemSW: Wrote various Chemistry programs (Stoichiometry, Standard Curves) in C, C++
  • CarClub: Supported T-1 and Frame Relay; configured Cisco firewalls; wrote various Perl scripts. Oracle developer.
  • Zoomedia: MFC/Visual C++ contract programmer; wrote Optidose application
  • Visa Online: Wrote 3 games (Hangman, VisaCard, and "Spatial Relations".) in C++
  • Cloudsystems: Contract C#/Javascript/ASP/Perl/Java/VBScript/Web Services programmer
  • NTT Software: Wrote the front end for NTT's Interspace project in C++.
  • TabletMedia: Contract C++, MySQL programmer
  • Printing Industries of Northern California: Contractrote ASP and Perl programmer
  • StrategicSolutions.net LLC: Contract programmer, SQL DBA; security lockdown expert
  • Isys: Contract Perl, ASP, Javascript, SQL Server, IBM DB2 programmer
  • PlasticWeb, Inc.: Contract ASP, SybPerl, Javascript, C++ programmer.
  • Synthetic: Contract C++, Screensaver, ASP, JavaScript, VB programmer
  • Kadiri: Created custom Web forms in Javascript/ASP with Access backend.
  • Hypnovista Internet Services: As part of two-man team, ran a small ISP, (Apache, IIS, Sendmail, Bind, Cisco routers)
  • Japanese Trade Organization: Wrote the "Bullet Train Schedule" in Lingo and Perl.
  • Living Books: Wrote Perl and Shockwave modules for the Living Books site.
  • The Grubb Co.: Created Perl search engine which searches through real-estate listings on the Web (www.grubbco.com).
  • Blastorama: Contract programmer (Java, Perl, cgi scripts, JavaScript)
  • Red Dot Interactive: Wrote the Red Dot Java Applet, Wrote 4 Coca-Cola screensavers, the Red Dot Screensaver.
  • Robert Lundahl & Associates: Wrote various Java applets.
  • H&M Systems Software: Wrote "African Adventure", a strategy board game for Windows, wrote "Mill-Pro", a strategy board game.
  • Shoptaugh Games: Wrote "Shuttles", a strategy board game in C++/Win32.
  • US Games: Wrote the Artificial Intelligence Engine for a Checkers game in C++.
  • Big Chief Software: Wrote the "Novell" screensaver in C++. Wrote various Perl scripts.

5/92-7/94 Windows Developer, Berkeley Systems, Inc.:  Wrote two screen saver modules for the AfterDark "Star Trek" module pack. Wrote two screen saver modules for the AfterDark "Disney Collection" module pack. Ported four modules from Macintosh to Windows for the AfterDark "Star Trek" module pack, and four modules for the "Disney Collection". Worked on C++ cross-platform library for Macintosh and Windows. Made additions and upgrades to AfterDark for Windows engine.

12/90-5/92 Windows Developer, BARRA: Wrote, maintained, and supported a finance program for Windows 3.0 which allowed the user to graph financial series in different currencies, perform hedges, calculate statistical information, create portfolios, print graphs and portfolios, etc. Wrote an MS Windows program which generated data files for existing DOS applications, and then ran the DOS applications under Windows.

4/90-12/90 Windows Developer, Higgins Group: Systems Analyst, Enable Software Maintained existing software in C. Added cut and paste feature to Higgins program. Wrote Windows applications which implemented a calendar, rolodex, scheduling, notified user of incoming mail.

2/89-4/90 Windows Developer, Datawiz International: Designed, wrote, and maintained MS Windows 2.0 and OS/2 1.1 Presentation Manager programs which interfaced to the Microsoft SQL Server, and allowed the user to enter and display information from the SQL database (RGB values, text, numbers.) Wrote and maintained applications which allowed the user to convert data from the SQL format into other formats (e.g. Cobol, HP Image, DB2), and vice versa.

Education: University of California Berkeley B.S. Engineering Physics