Text Version (http://filter24.org/resume/html2text.py?&url=http://filter24.org/resume/resume.html) === Rob Buse Cincinnati, OH job@filter24.org (mailto:job@filter24.org) === Objective To design and implement, innovative, high quality software. === Professional Experience 6.05 - Present Software Engineer Lectronix Inc. (http://www.lectronix.biz/) Ann Arbor, MI Code Generator In house tool used to specify software interfaces in XML for rapid generation of bug free, well commented, C++ classes. * Designed and implemented Generator using Python and wxWindows. * Created code templates for an inter-process communication layer that automates nested C++ object serialization, endinaness swapping, and pretty printing of structures. * Created component that generates device drivers and stubbed IOCTL handlers. * Code generator has been used in production of two device drivers and ten server/client applications, saving developers from writing and debugging thousands of lines of code. R5000, T7000 Projects In-dash computers for heavy truck and recreational vehicles. Systems feature CD and USB playback, an iPod interface, satellite radio, external camera display, GPS navigation, vehicle systems monitor, trip computer, and tire pressure monitors. * Wrote a VNC client using C++ and the QNX Photon mircoGUI. * Developed a device driver for a serial based touch screen device. * Created an intelligent high speed serial to TCP/IP bridge that allowed us to interface our VNC client to a 3rd party system. * Wrote utility to monitor memory usage and report low memory conditions. P7000 Project In-dash computers for public safety vehicles. Systems feature speech recognition, radio communications management, and police vehicle equipment control. * Modifed QNX based firmware updater to work with Linux MTD flash interface. * Ported existing sound framework to work with Linux sound architecture, ALSA. * Wrote Linux ALSA SoC driver for custom i2s device. * Created userspace/kernel interrupt bridge so Legacy userspace drivers work with Linux kernel. * Ported existing I2C driver to work on Linux. * Maintained firmware installer. Mobile Media Dock Project Portable music device docking station for vehicles, supporting iPod and flash media. * Modified Greenhills Board Support Package for the Analog Devices BlackFin 539 processor to run on Lectronix custom hardware. * Added USB Stack and USB media detection code. * Developed a shared memory version of Lectronix's abstract inter-process communication layer. Navigation Server Largest module for the 7000 Project. Application displays maps, calculates routes, provides audible directions, and allows searching of map data. * Created proximity search component that used 3rd party geographic data engine to find map features and points of interest around a given location. * Modified 3rd party Python map scripts to categorize points of interest data. * Implemented map marker component which allows arbitrary icons to be shown and updated in map coordinates. * Implemented Module for installing and managing user defined POI databases. * Maintained proximity search and POI components. Miscellaneous * Wrote wxPython based log viewer for intelligent capture and filtering of serial and syslog data. * Created wxPython based regular expression search for searching source trees. * Implemented posix glob for Win32. * Modified U-Boot universal boot loader to initialize Coral-P video device and display splash screen. * Updated Integrity IDE Driver to support BlackFin I/O pipelining. * Wrote a tool called Generic Tester that parsed Doxygen XML output and created C++ unit tests based on developer's Doxygen comments. * Created generic server, client, driver, and application classes to replace standard entry points which enabled components to share common code and be controlled from a single point. Wrote python scripts to migrate code base to new classes. * Developed Python scripts to interact with SourceOffSite source control server and automate code sharing and moving. 3.03-6.05 Software Developer Cybernet Systems Corporation (http://www.cybernet.com/) Ann Arbor, MI * Maintained and expanded Cybernet's OpenSkies (http://www.openskies.net/) massively multi-player simulation system. * Added functionality to achieve High Level Architecture (http://en.wikipedia.org/wiki/High_Level_Architecture) (HLA IEEE standard 1516) compliance. * Worked extensively with GNU/Linux, G++, Gdb, C++ STL, TCP/IP sockets, and the pthread library. 3.98-5.99 Computer Technician Michigan Technological University, IT Department Houghton, MI * Troubleshot, repaired, and built Intel and Sparc based computer systems 12.98-2.99 Software Developer (Contract) Hennessey Engineers Inc. Trenton, MI * Developed two civil engineering applications that aided in detention basin calculations. Both were coded in C++ using Microsoft Foundation Classes for the GUI. 5.98-8.98 Web Programmer Bencomp Inc. Alpena, MI * Developed an online real estate database using the Apache web server and Perl/CGI. === Personal Projects Seq24 (http://filter24.org/seq24/) * Created seq24, a real-time MIDI music sequencing system for GNU/Linux using GTK-- GUI library and the ALSA midi API. * Ported Seq24 to win32 using MinGW Library * Released under the GPL, Seq24 is currently available with most major linux distributions. * A typical new release will receive several hundred downloads within the first week. Game Development (http://bouchlabs.com) * Flash game project's using Adobe's Flex 3 SDK and written in Actionscript 3.0 * Technical features include: A* path finding, hierarchical state machines, JSON based level loading, various game AI techniques. PIC Microcontroller * Developed a small circuit which allowed old game system controllers to be used as a USB HID joystick on a modern Operating System. * Modified USB stack for devices hardware. Digital Signal Processing * Developed an object oriented DSP system for creating music synthesizers. * System included band-limited oscillators, multi-mode resonant filters, envelope generators, and a note sequencer. * Software coded in C++ using MFC and the Microsoft DirectSound API. === Education Bachelor of Science in Computer Science Michigan Technological University Houghton, MI, 2002 * Compiler Construction Developed a compiler that translated a Pascal like language into Sparc assembly language using flex, bison, and C++. * Operating Systems I, II Extended NACHOS (a minimal operating system a with MIPS simulator) to include multi threading, system calls, virtual memory, multi-programming, and a user shell. * Computer Networks Wrote a multi-client/server file transfer application that used raw UDP packets and provided its own transfer control layer. * Artificial Intelligence Implemented various AI concepts in Lisp and Prolog * Parallel Programming Wrote several scientific programs for a Linux beowulf cluster. * Computing with Geometry Worked with C and OpenGL to implement Bezier, B-spline and NURBS curves and surfaces. * System Software Project Member of a team that developed a graphical object relation program in Java using the swing API. * Graphical Interface Design * Computer Architecture * Numerical Methods * Discrete Structures * Assembly Language * Introduction to CS I, II * Calculus I, II, III * Statistics * Probability * Physics * Chemistry * Linear Algebra === Skill Summary Languages * C++ * C * Python * ActionScript 3.0 * Assembly x86, Sparc, MIPS, Blackfin, PowerPC, Microchip PIC * Lisp * BASIC * FORTAN * Bash Scripting * NSIS Installer Scripting Libraries * C++ STL * C Standard Library * Python Standard Library * wxPython * OpenGL * BSD sockets * X-lib * GTKmm * Flex/BISON * MFC * ALSA Operating Systems * Microsoft Windows (x86) * Linux (x86, Freescale 5121) * QNX Rtos (Freescale 5200) * GreenHills Integrity (BlackFin 539) * Nexenta GNU/OpenSolaris (x86) === References Supplied upon request.