http://roderickmann.org/resume/
Roderick Lee Mann
Principals only, please.
An experienced C++/Objective-C iOS and Mac OS X, and Java server-side software engineer with a background in object-oriented design, application frameworks, general user interface development and system API development.
References available upon request.
Education & Honors
- B.S., Electrical Engineering and Computer Science, UC Berkeley, CA.
- Warren Dere Design Award for outstanding engineering design, UC Berkeley, CA.
- H.S. Diploma, American School of Lima, Peru.
Recent Experience
Computer, Electrical, and Mechanical Engineering services.
Wide-ranging software development for iOS and Mac OS X. Hardware accessory development under the Apple MFi program, including Bluetooth Classic and Bluetooth LE.
Embedded hardware development, including USB device firmware and host drivers.
Published the moderately successful MissionClock iPhone application on July 30, 2009. As of November 2010, it has 84 reviews and a 4.5/5-star average.
Web application design using Java: J2SE/J2EE, JSP, Struts, JDBC, EJB, JNDI, JMX, XML, SQL, MySQL, Postgres and additional technologies.
Designed and developed all aspects of the VS8HCA (no longer available) and store, including the hardware design, firmware, mechanical engineering, packaging, website development, advertising and PR. Online store currently deactivated as product sales have ceased.
General computer consulting services for various clients including:
- Matterport, Inc., Mountain View, CA, iOS, MFi hardware & firmware
- Red Bird Studios, Redwood City, CA, iOS, Java EE
- KeepMedia, Inc., Redwood Shores, CA, Java Enterprise Consulting Services
- ePocrates, Inc., Foster City, CA, Mac OS Consulting Services
- Knowledge Revolution, Inc., San Francisco, CA, C/C++ Engineering Services
Nov 2009 - Nov 2011
iOS development (primarly iPad). Titles include Yahoo! Fantasy Baseball 2010 for iPhone, Yahoo! Entertainment for iPad, and Yahoo! Sportacular for iPad.
Software and hardware development.
Past Experience
Mac OS X Cocoa/Objective-C/C++ application development for music synchronization application.
Systems-level software development on proprietary embedded OS.
Embedded development of FAA-certified primary flight display, including UI & graphics, task scheduling, and low-level hardware drivers on a Marvell PXA 320 ARM-core processor. Work also included ARINC 429 and other serial data protocol implementation.
Senior developer and architect of KeepMedia’s customer-facing web pages and client-server text search system.
- Regularly add new functionality and direct JSP authors and other engineers in Struts/Hibernate-based web application development.
- Maintain and enhance in-house OR layer.
- Develop tools for internal use, managing content flow and aspects of data integrity.
- Work directly with operations team to ensure availability of distributed web services.
Mac OS and Java server-side work:
- Led the development of the C++ software client for the Shutterfly digital photo finishing service. Implemented all versions of the Mac OS client (both Browser plugin and stand-alone software).
- Designed and implemented the second-generation UploadServer, a collection of Java Servlets running on Tomcat.
- Help design the original protocol used by Shutterfly for uploading images. Both the old and the new are based on HTTP. The new design maximized throughput by reducing the number of connections required.
- Developed several designs for scalable, high-performance upload server architectures, including both software, hardware and storage.
Significant Mac OS work:
- (All development work was in C++ using CodeWarrior)
- Responsible for various components of AppleShare IP 6.1 & 6.2, including the Facade, EasySetup and Manager.
- Designed and developed new user interface for the AppleShare IP 6.0.x server. Also developed tool to verify and repair PDS and Users & Groups files.
- Developed native Java library to provide AppleTalk networking services for Java Spooler application.
- Worked on Finder 8.0 team. Shipped as part of Mac OS 8.0.
- Converted V-Twin to use SOM, thereby allowing much easier maintenance of V-Twin clients and avoiding the fragile base class problem.
- Did performance analysis and optimization of Finder 8.0, identifying numerous algorithmic improvements.
- Redesigned the thread scheduling and command handling code in Finder 8.0 to make it more efficient and smaller.
- Developed portions of a lightweight, platform-independent application framework, reducing the development time for numerous Mac OS 8 user-experiences (FileSharing, Tutorial Access).
- Co-designed and implemented a code-driven software feature repository, called the Feature Manager, resulting in faster system boot and application launch times.
- Designed and implemented the Trigger Manager, a SOM plugin-based system service for initiating events within the Mac OS.
- Developed the first Setup Assistant, setting the stage for the development of later Assistants.
Developed Java client applications for Mac OS users to manage Fiery print resources.
Ported and enhanced Toughman Contest from Sega Genesis to Genesis 32X, published by Electronic Arts.
Designed and implemented data export code allowing WaveFront to use animation and model data generated by WorkingModel (a 2D physical simulation package).
Worked in a team to develop C a voice-recognition system (Voice Navigator II), later re-written in C++; developed an application to teach the computer to recognize command words.
Skills
Mac OS X/iOS
- Mac OS X and iOS development including Cocoa, AppKit, UIKit, Core Data, Core Audio, and Core Video, and numerous other Mac OS X/iOS technologies.
- Extensive and varied C/C++/Objective-C and Java application development experience.
- USB driver-level development experience.
- Extensive experience in leading Mac OS development tools including Xcode, Instruments, and Quartz Composer.
Server & Networking
- Proficient in Java server-side development including JSP and Struts, J2SE/J2EE, JDBC, EJB, JNDI, JMX, XML, Hibernate, Mavent, Ant, Hessian, and additional technologies.
- Tomcat, Apache, JBoss, and Resin servers.
- SQL database programming under MySQL, Oracle and Informix.
Graphics & Simulation
- Personal work in simulation and modeling of physical phenomena.
- General computer graphics programming knowledge and experience.
Languages
- Highly proficient in Objective-C/C++, Java, and general object-oriented design principles and patterns.
- Experience with SOM for MacOS (ancient).
- ARM, AVR, PowerPC, 680x0, Microchip PIC, SH2 (Sega Genesis and Saturn) assembly.
- Unix bash, tcsh, csh, ksh. AppleScript, Python, Ruby.
- Matlab.
- Fluent Spanish.
Embedded & Hardware
- Atmel ARM (ARM 7, Cortex-M3) development work with GNU C.
- Atmel AVR development work with GNU C.
- Microchip PIC development work in PIC assembly.
- FPGA: Xilinx Virtex II, ModelSim, Synplify Pro.
- PC board development of moderate complexity, including moderate-speed analog (60 MHz) and low-speed digital (100 MHz) design.
- Mechanical engineering in the design of product enclosures and some robotics.
- Wrote extensions to the USB HID specification for flight simulation.
OS
- Primary experience in iOS and Mac OS X.
- Commercial development experience with Java servlets and Apache/Tomcat and Resin on Linux and Mac OS X.
- Developed for BeOS using Application Kit. (Even wrote something similar to the BeOS Application Kit for NuKernel).
- Familiarity with Unix on a number of platforms: Mac OS X (BSD), OpenSolaris/Nexenta, Linux (RedHat/Fedora)
- Preferred development environment Mac OS X/Xcode.
Other
- Private Pilot with Instrument Rating
- PADI Rescue Diver