7554 Ohland Ave NE
Otsego, MN 55330
|C++/Objective-C/Perl, Desktop/Mobile/Web Software Engineer|
|Senior Software Engineer for Alien Skin Software||December 2014 - Present|
|Qt/C++ development for Exposure photography software, OS X and Windows.|
|Senior Software Engineer for MakeMusic||July 2009 - December 2014|
Ongoing development of SmartMusic desktop application (interactive practice tool for band, orchestra, and vocal students) and internal tools and systems.
Re-architected content security model. Used REST architecture for client-server communications. Build automation and back-end processes scripted using Perl. Rebuilt Windows installer with WiX. Designed and prototyped SmartMusic Inbox mobile application for iOS and Android, using Objective-C and Cocoa.
Scrum Master of a small team in an Agile environment; member of UX design team applying Goal Directed Design methodology. Completed Interaction Design Practicum at Cooper Design, August 2011.
UX mockups with Balsamiq; unit testing/TDD with Google Test and OCUnit/XCTest; code reviews with Crucible; continuous integration with Jenkins.
|Software Engineer for MakeMusic||July 2005 - July 2009|
Ongoing development of SmartMusic desktop application; using Borland C++ on Windows and C++ with the MacApp toolkit on Mac OS X.
Designed and developed internal content authoring and packaging tools, and content distribution system (server and client); using C++, Qt, Perl, and Subversion.
|Website/Database Developer for MakeMusic||July 2003 - July 2005|
Maintained smartmusic.com website using Perl/CGI, Oracle, and Solaris; designed and developed rewrite of website, back-end order processing, and subscription management with XML-based communication to desktop application; using Apache/mod_perl with DBI and HTML::Mason.
Provided systems-level support for Solaris servers, including implementation/customization of automated monitoring system using nagios.
|Enterprise Application Integration Developer for Cargill||July 2000 - January 2003|
Provided operational support, system administration, and development of Enterprise Application Integration software to support business processes; using TIBCO, webMethods, and in-house tools. Perl, Java, C/C++ and Visual C++; on HP-UX, Solaris, Windows NT/2000, AIX, and OS/400; with Oracle and SQL Server.
Implemented High Availability clustering with HP ServiceGuard for TIBCO components; developed tools for automated system maintenance, alert notification, statistical gathering and analysis, and remote administration; developed ORB-like network abstraction layer for Perl, Object-Oriented Perl database abstraction layer for Oracle, and Object-Oriented Perl library for the TIBCO Rendezvous C API and the Hawk AMI.
|Software Engineer for Information Advantage||March 1999 - July 2000|
|Maintained, designed, and developed business intelligence software using C++ and Perl; maintenance on core OLAP server; rewrote substantial associated servers. Designed and developed CORBA-based application server in C++ (with JNI-embedded Java VM and Perl interpreter), providing a distributed environment to host system components.|
|Consulting for Bonestroo, Rosene, Anderlik & Associates||1999; 2003|
|Web-enabled an existing work order system using IIS, SQL Server, Perl, ASP, and HTML on Windows NT; providing project, plan, and bid information to external contractors (1999). Enhanced Excel-based project management tool (SQL Server backend) for budget planning and project initiation using Visual Basic for Applications (2003).|
|University of Minnesota||1995 - 1999|
Bachelor of Science - Computer Science
National Merit Scholar, Honorary Presidential Scholarship, Academic Excellence Scholarship, LANDO Scholarship, Tau Beta Pi.
Teaching Assistant, Introduction to Programming in C.
Activities and Societies: Tau Beta Pi
Utiligent: general maintenance of large-scale customer service system for utilities companies and development of internal tools, using Visual C++, Perl, ASP, and HTML.
PRA Solutions: assisted in conversion of large-scale passenger revenue accounting system for airlines from SunOS 4 to Solaris 2 and general maintenance, using C++, Perl, shell scripting, and Sybase.
|Computer Mediated Timed Sight Reading with Assessment||Issued April 15, 2014|
United States 8,697,972
|C++ (Qt, CORBA, ODBC, STL, Win32); Perl (DBI, Mason, CGI); Objective-C (Cocoa, Cocoa Touch); Java (J2EE, EJB, JMS, JDBC, RMI, JNI); Xcode 6, Visual Studio 2013; Perforce, Subversion|
|Enterprise Application Integration|
|TIBCO (Rendezvous, Active Database, Message Broker, Hawk); webMethods (Integration Server, Developer, Trading Networks); XML, LDAP|
|Mac OS X (10.3 - 10.10); iOS (4 - 8); Windows (NT/2000/XP/Vista/7/8); Linux; Unix (Solaris, HP-UX, AIX)|
|Oracle, SQL Server, MySQL, PostgreSQL, Sybase|
|Author/Maintainer of Perl Libraries|
Tibco::Rv is an Open Source Object-Oriented Perl library providing language bindings to the TIBCO Rendezvous C API.
File::Format::RIFF provides an implementation of the Resource Interchange File Format. You can read, manipulate, and write RIFF files.