David Finucane
1332 Lida St Pasadena CA 91103 • (626) 429-4299 • davidbfinucane@gmail.com

Objective A Software Developer job.
Experience
iOS and Mac OS X Development
iTunes App Store as davidfinucane.com
Software Engineer. I'm writing small iOS apps privately but I'd prefer to work on a team.
  • Bike Laps. Lap counter for road cyclists. Uses Core Data, ARC, Location Manager (GPS), Media Player, Grand Central Dispatch, and MapKit.
  • Sunrise Alarm. Unusual alarm clock app. Uses Location Manager, Yahoo Weather API, XML parsing, Local Notifications, AV Foundation, custom fonts, astronomy math.
  • Law Book Apps. About a dozen. Crawlers and page scrapers, an indexing tool, memory management with limited iPhone RAM.
  • Ancient Greek Dictionary. The first Greek keyboard on the iPhone.
  • Anglo Saxon Dictionary. Predictive text for the Old English character set.
  • Diary Reader. An ebook reader like "Stanza" with books converted from blogs. Google Blogger API, on the fly pagination and typesetting.
  • Tilework. Penrose Tiles with collision detection, rule enforcement, and Quartz 2D graphics for arbitrary scaling and rotation.
  • MyMySpaceMail. Myspace client. Resulted in a cease and desist letter.
  • The Music N***. iTunes replacement solving the problem of guests fighting over music.
  • Duncan Studios. Web site entirely in AJAX, using jQuery, Javascript, and PHP.
2010 - Present
Myricom, Inc.
A Caltech spinoff designing high speed interconnects and programmable NICs for high performance applications.
Software Engineer. I was the first regular employee hired by the company's founders. I was initially responsible for whatever software the hardware team needed, and also for debugging customer installations; as the company grew, I was responsible for writing firmware for the company's switch products, and for writing simulators and debuggers used in chip design, and in developing software for those chips.
  • Firmware, in C++, on vxWorks and embedded Linux for four generations of Myricom's product line of network switches.
  • A cycle-accurate simulator and debugger for the company's LANai series of microprocessors, used internally for code development.
  • Mapping software to determine real time network topology in the presence of fabric failures. Versions of this ran on host machines, as well as on network cards.
  • Routing software to compute redundant, deadlock free routes for Myrinet based clustered computing.
  • GDB backend and server to inject C code into verilog simulations running on dedicated machines, used for chip verification and remote code development.
  • Flit-level, event driven simulator for source routed networks of crossbars, used to test routing algorithms.
  • A graphical application in Java to monitor Myrinet networks, including a graph matching algorithm that worked on unlabeled nodes.
September 1994 - December 2010
Education
University of California, Los Angeles
B.S. Computer Science and Engineering. 3.3 GPA
1989 - 1993
Sample Code http://www.davidfinucane.com/SunriseAlarmXcodeProject.zip
http://www.davidfinucane.com/codereview   ,  http://www.davidfinucane.com/laps_writeup
http://www.davidfinucane.com/c++Example.zip
Interests Programming, cycling, books, television.