Cocoa Developer - Apple Veteran
Stockholm Area, Sweden
Cocoa Developer - Apple Veteran
Stockholm Area, Sweden
I ship quality consumer software on schedule.
Well-versed with usability, performance, security, internationalization, compatibility, and intellectual property issues.
Specializing in Cocoa framework development.
Mac developer since System 6.
(Computer Software industry)
November 2008 — Present (1 year 1 month)
Tech Lead on Skype for iPhone. Also worked on improvements in Skype for Mac 2.8.
(Computer Hardware industry)
November 2006 — September 2008 (1 year 11 months)
Tech Lead, responsible for 100,000 lines of code. Architected new codebase for software installation (PackageKit) in Mac OS X Snow Leopard and oversaw transition of Installer, System Migration, Software Update, etc. to adopt it. Played key role in designing and implementing simplified user interface in OS Installer in Snow Leopard and in Software Update in Leopard. Overhauled the basis of Mac OS X system migration technology, used by OS Installer, Setup Assistant, Migration Assistant, and Time Machine.
(Public Company; 10,001 or more employees; AAPL; Computer Hardware industry)
June 1999 — March 2005 (5 years 10 months)
Directly responsible for Mac OS X's Software Update client since v10.2. Engineered a major client-server re-architecture, involving process changes across several teams. Wrote the original Setup Assistant in Mac OS X v10.0 and v10.1 with two other engineers. Contributed to early porting (Carbonization) efforts of Mozilla and iMovie. Contributed features, fixes, bug reports across Mac OS X, in all major releases since Developer Preview 2.
(Public Company; 10,001 or more employees; TXN; Computer Software industry)
June 1998 — August 1998 (3 months)
Created Windows SDK for TI-89 and TI-92 Plus graphing calculators, based on GNU CC. Improved Mac version of Cabri Geometry II. Wrote portions of low-level MC680x0 emulator.
(Educational Institution; Computer Software industry)
June 1997 — August 1997 (3 months)
Conducted formal studies of how children think about and describe algorithmic concepts, in an effort to design a programming system for non-programmers.
M.A. , European Studies in Society, Science and Technology , 2005 — 2006
Received distinction on masters thesis "The problemization of urban sprawl in the United States", 2006.
2nd semester specialization in "Innovation Systems, Social and Ecological Change" at Aalborg University, Denmark.
B.S. , Computer Science , 1995 — 1999
Honors Diploma , 1993 — 1995
Languages: English (native), Swedish (intermediate), and Mandarin Chinese (conversational).
Patents filed:
* Provisional U.S. Patent application, "Installation of Software onto a Computer". Inventors: Jack R. Matthew, John R. Chang; number 61/059,683, June 6, 2008.
* Provisional U.S. Patent application, "Merging File Directories". Inventor: John R. Chang; number 61/059,699, June 6, 2008.
Patents awarded:
* Ciudad, JP; Chang, J; Novick, G. "Mechanism for determining applicability of software packages for installation." U.S. Patent 7530065, issued May 5, 2009.
Publications:
* Marc W. Brooks, John R. Chang, Ryan C. Horner, David W. Brown: Analysis of personal mail attributes in a computer mediated communication environment (abstract). SIGCSE 1994: 410