Thomas K. Burkholder
e-mail: burkhold@dogrobber.comWork history in detail.
WORK EXPERIENCE
Period: | Employment: | |
---|---|---|
Apple Inc. Consulting software engineer and general fixer in the Apple Media Products division, the modern incarnation of the iTunes Store. Everything old is new again | ||
Raised my son. Built a 5000 square-foot house as my own general contractor. Ran a lot. Travelled quite a bit. Didn't do much with technology at all. | ||
Apple Inc. Worked as an engineer on the iWork project, getting back to my client-side Objective-C roots, and finally digging into iOS. | ||
Apple Inc. Managed a team of engineers from Apple's Vancouver BC Engineering offices, responsible for the iTunes Store internal customer support application, fraud countermeasures, and a random assortment of other stuff. | ||
Apple Computer. iTunes U. Gloriously free of e-commerce and all of its ills, I designed and implemented new features, including lucene-based search and web services apis. | ||
Apple Computer. As part of the original iTunes Music Store team of 7 engineers, helped to design, implement, and deploy the world's premier online music store, with sales currently exceeding 500,000,000 downloads. Inventor on several patent applications but especially: 20050021478 Method and system for network-based purchase and distribution of media. | ||
Apple Computer. Implemented major e-commerce and UI compenents for transitioning the old (free) iTools service to the new (fee-based) .Mac service which has earned Apple many millions of dollars since. | ||
Sr. Software Engineer, Resonate. Responsible for object-management middleware component framework design, creation, and leadership; principal technologies are java (as usual), CORBA (Orbacus/Java 4.01). | ||
Sr. Software Engineer at Oracle. Responsible for Java UI component creation and maintenance as well as work on a XML-DHTML generation framework (XSLT/java/javascript). | ||
Consulting at Pacific Data Images with Fresco technology. Responsible for java (Fresco) framework development, general application troubleshooting, and planning for future IT design. | ||
Infoscape, Inc., Senior Software Engineer. Responsible for design and implementation of major frameworks and application subsystems in Java. Areas of specialization include new UI components, object graph management, web publishing, SQL generation, validation. | ||
Sun Microsystems, Inc., SunSoft Openstep team, Senior Software Engineer. Responsible for integrating new Openstep code into Solaris/Openstep, fixing application and foundation kit bugs, maintaining the Mail application and implementing the Sound subsystem. | ||
AT&T Wireless Services, Consulting Software Engineer (Formerly McCaw Cellular). Project was Axys McCaw Application Framework, a NEXTSTEP/Sybase customer management architecture. Responsible for all GUI frameworks, including a set of re-usable IB palettes, a re-worked Enterprise Objects Framework (EOF) interface layer, extensions to existing NEXTSTEP appkit classes and a GUI/database validation subsystem. Also developed and taught a developer training course. Also consulted with Swissbank (Chicago) and Revco (Cleveland) for parts of this time. Consulting services provided through FOJ, Inc, of Seattle WA and Vanguard Software Corp., of Chicago, IL. | ||
NeXT Computer Inc. Premium Developer Support. Duties included support of large corporate developers with difficult technical problems, companies included Meijer, AT&T Wireless Services(McCaw), Pan Canadian Petroleum, and the US Navy. Frequent on-site visits, coordination with the sales force, and occasional small product design and training were also part of the job. Also filled in as a developer trainer multiple times. | ||
NeXT Computer, Inc. Developer Support. Duties included communication with corporate and third-party developers; problem identification, research and resolution in a wide range of technical areas; some on-site support. | ||
University of British Columbia Commerce Dept., MIS Division, full time as applications developer and systems administrator of a Group Decision Support System, for a lab of NextStations. | ||
NeXT Computers Canada Inc., part-time as a Campus Consultant, supporting NeXT users and promoting NeXT on and off campus. | ||
J. Hills Radiology, Inc., full-time as a NEXTSTEP developer, building a radiological image management system. | ||
UBC Computer Science Dept., full time as an application developer for the freshman NeXT lab. | ||
UBC Computer Science Dept., part time as a lab assistant for the department Macintosh lab. | ||
Brisbois Bros. Gold Mining, Yukon Territory, Canada. Worked as a heavy-equipment operator. | ||
Darfield Building Products, Inc., of Darfield BC, Canada. Worked full time as mill worker, salesperson, housebuilder, heavy-equipment operator. |
EDUCATION
PROGRAMMING LANGUAGES (in order of proficiency)
Java, Objective-C, C, Various SQL flavours, javascript, Display Postscript, C++, Prolog, Lisp, Motorola 68000 assembly, Modula-2, Pascal, Basic.
SOFTWARE AND ENVIRONMENTS
OPERATING SYSTEMS
PATENTS
MAJOR PROJECTS
iTunes Music Store was a radically new way of purchasing music online. My responsibilities included initial architecture of a pluggable content-importation tool for music (samples, metadata, cover art, the works), and an implementation of same for the Warner label; later I was responsible for design and implementation of the commerce model, credit-card authorization engine, integration with SAP, commerce UI implementation, and price modelling. After the initial release I was responsible for the commerce and much of the account UI components of 20+ and counting international stores, complete UI and architecture of a gift certificate/allowance mechanism, as well as a more recent mechanism for gifting music (patent pending). Throughout the project I was a principal architect and design leader. The iTunes Music Store has been Apple's most successful online venture, and the most successful online music store in the world to date.
iWork. Apple's productivity client applications for iOS and MacOS. Monolithic codebase, large numbers of developers, high levels of integration between subsystems. I wrote network integration layers, and syncing UI; it was a great way to get refreshed on modern iOS/MacOS X client APIs and practice.
iTunes U. Apple's e-learning solution. My involvement was mainly back-end data management and database integration.
.Mac. A suite of internet applications that provide Apple customers with the ability to painlessly enhance their internet experience. I was responsible for the design and implementation of the e-commerce underpinnings of the free iTools service's transition to the subscription-based .Mac service, particularly in the area of credit card processing, commerce UI, and SAP integration.
AreaJ. An open-source perl/mod_perl/mysql/apache/ImageMagick based suite of web applications for management, presentation, and editing of digital photographs.
Designer of a CORBA/java based object-management middleware solution for Resonate's second-generation product. Can't say more until the product is available.
Maintenance and new versions of Oracle's AWT and Swing-based Table objects; design and implementation of localized calendar UI object, Design and implementation of GanttChart UI object.
Infoscape FrescoDesigner versions 1.0 thru 3.x, and Fresco Frameworks. Infoscape’s FrescoDesigner is a complete database front-end solution, including tools for object-relational mapping, GUI layout and connection, as well as frameworks for complex database access. (1997, 1998).
Solaris Openstep. Sun’s implementation of the OpenStep Spec developed jointly by Sun and NeXT. Openstep included a fully-featured application-development library that implements the NEXTSTEP look-and-feel, as well as the basic productivity apps such as a mail application and text editor. My work on Openstep included integration of new application-kit code, porting of NeXT's Enterprise Objects Framework (EOF), bug-fixing of existing code (mostly mail-related) and design and implementation of large parts of the sound subsystem. (1996). OpenStep and NextStep have since evolved into Apple's upcoming Mac OS X 'Rhapsody' Operating System.
McCaw Application Framework. This object-to-database persistence effort was an augmentation of NeXT’s Enterprise Objects Framework (EOF). As part of a team of about 10 engineers, my responsibilities were to design, develop, fix, and maintain the GUI architecture and tools, including InterfaceBuilder palettes, re-usable interface objects, user-input validation subsystem, and GUI-side database interface code. Also was solely responsible for development and delivery of SecurityManager a table-maintenance application managing a complex schema. (1995).
MSMail Bundle. This is a bundle designed for use with NEXTSTEP 3.3’s Mail.app, providing the capability to send and receive Microsoft-format Mail. (1994).
TTools. A library/IB-palette combination designed as an advanced IB primer, released as a NeXT mini-example for the use of the NEXTSTEP developer community. (1993). Related speaking engagements at the East Coast Developer Conference, NEXTSTEP Expo and a feature article on IB-palette development for the NeXT-produced developer journal, NXApp (1993, 1994).
NeXT Premium Team Support. I designed and field-tested the delivery of a team support policy for NeXT’s Premium Developer Support customers, so that I was able to return to school part-time to finish my degree (1993).
NeXTAnswers faxback software (team effort), a utility package that collates multiple documents in many formats, converts to PostScript, and faxes the result. In production as the back-end of the NeXTAnswers document-retrieval system (1993).
MeetingPlace. A NEXTSTEP group decision support system application. Helped design and implement a coordinated, multimedia object-sharing architecture for UBC’s Commerce Department (1992).
FUBAR: Fully Unified Basic Appointment Resource. (Code Name). A UNIX/X11 application allowing individuals and groups to organize and integrate their schedules across a LAN. (1990, 1991).