Philippe Habib





Senior software engineer with over 15 years of experience developing systems internals and embedded software for applications ranging from email to robotics to rfid to data communications and military displays in start-up to Fortune 100 companies. Skills include:

Analyzing needs, developing architecture, designing and implementing code to meet customer requirements

Designing and coding real-time multi-threaded software with hard timing requirements

Designing and implementing firmware for medical and scientific devices.

Debugging software using debuggers, logic analyzers, etc….

Applying CMM and CMMi methods to software development process

Writing applications for wireless data transport using handheld devices


Phenoma, Inc2005 to present

Senior Software Engineer (Consultant)

Designed and implemented microcontroller software.

Designed and implemented hardware and software using Microchip PIC family chips from PIC10 series to PIC18 series as well as Atmel. and Rabbit.

Worked closely with clients to generate detail hardware and software designs and traceability for testing from client requirements.

Assisted clients to reach an appropriate technical solution to meet requirements.

Designed and implemented code to read internal and external ADCs and other inputs.  Use those inputs to ensure proper operation and patient safety in medical devices.

Designed and implemented software for patient safety critical applications as well as for industrial equipment.

Designed and implemented communication protocol for instrument operation and setup.

Implemented RS-232, RS-422, USB, and TTL serial communications.

Implemented control of peripheral chips using SPI protocol, including chips with different speed characteristics due to either part speed or slow optoisolators.

Partial list of medical devices

Neural stimulator.  Designed and implemented hardware and firmware to interface with FPGA hardware and provide patient and clinician user interface in a hand held device.

Bone drill.  Isolated reliability issue to root cause by analyzing hardware and firmware design.  Designed and built test fixture for client.

Microwave ablation tool.  Designed and wrote firmware library to control power source and to interface with controlling application.  Work included USB interface and control protocol as well as interface to ADC and DAC components.

Therapeutic hypothermia device.  Designed and implemented firmware for control and monitoring distributed across several processors.

Designed and implemented TinyOS software.  Produced architectural designs and schedules for remote sensor projects.

Designed and implemented code to directly read the Crossbow mote bus to provide sensor I/O without the need for an expansion card resulting in lower cost solution.

Analyzed project requirements and created architecture and project schedules to provide management with design alternatives and budget and scheduling information.

Worked on the Cisco CRS1 network switch doing bug fixes and new feature design and implementation.  Worked using the C language and GNU tools.

Found and fixed re-entrancy problems and cross task memory corruption issues.

Added logging and debugging information to aid in future bug fixes and performance improvements.

Designed and implemented a motion control compatibility library to allow common motion control commands to operate different motor types with different vendor’s controllers.  Worked using the C language as well as low level motor controller instructions.

Defined and implemented interfaces to provide desired motor operations.

Worked with controller vendor and instrument designer to integrate motors, controllers, and newly designed instrument hardware into a working package.

Performing low level motor tuning for best possible operating speed and quality of motion.

Led completion of embedded biotech robotics software development project that included motor control, communications, user interface, and statistical calculations.  Worked using the C language as well as low level motor controller instructions.

Brought incomplete code to full functionality and customer shipment, fully meeting customer’s expectations

Guiding, coordinating and integrating the software development work of three developers, accelerating completion of  project

Performing source control and change tracking to focus efforts and ensure incorporation of all changes.

Rockwell Collins, San Jose, CA  2002 to 2005

Senior Software Engineer

Designing and implementing new features and fixing defects on a fighter plane display.  Used a mix of C, Ada, PowerPC assembler, and Perl.

Designed and implemented enhancements to the F22 display to fix long time defects: in one case identified and eliminated a multi-tasking design flaw related to interrupt routines that had been open for four years.

Evaluated and recommended introduction of software quality measurement tools (LDRA) that enabled team to conform with coding standards and meet customer requirement for use of quality metrics.

Researched and recommended compilers and integrated development environment for use with new embedded processors to achieve highest productivity at best price points.

Identified need for source control, convinced management team, and then instituted disciplined process and tools (PVCS, ClearCase) to protect IP assets and reduce risk from loss and corruption of data for projects that were lacking it.

Designed and implemented an automated system using ClearQuest to move bug tracking from paper to a computerized system that was integrated with the source control tools, shortening defect find and fix cycle and provided data for statistical analysis of defects.

As SEI CMM and CMMi assessment team member, reviewed all software development and cross departmental practices and made concrete recommendations for increased predictability and quality to conform to CMM/CMMi guidelines.

Atlantes Services Inc., Menlo Park, CA2001

Senior Staff Engineer

Integration, calibration, and data acquisition and analysis of RFID systems.  Rapid prototyping and implementation of Windows software using Visual BASIC.

Investigated and evaluated competing Radio Frequency ID (RFID) technologies and determined that proposed applications were not feasible using currently available products..

Designed and implemented software to configure, control, and gather statistics from several vendors' RFID reader hardware using Visual BASIC.

Oracle Corporation/nCUBE Corp.,Redwood Shores, CA 1999 to 2001

Senior Technical Staff

Responsible for implementation of Oracle Video Server(OVS) on Silicon Graphics  platform.  Used C to write flexible platform independent code.

Investigated and implemented a new installation and delivery method for the Oracle Video Server, Client, and Server Manager that resulted in a single consistent delivery and installation package for multiple operating systems, using InstallShield and the Oracle Universal Installer.

Designed and implemented feature and performance improvements in C for the Oracle Video Server, producing a product that better met users’ needs.

Created a POSIX-compliant shared library in C for nCUBE's video server to increase the productivity of developers who work on the video server.


IBM/Lotus Development cc:Mail Division, Mountain View, CA1994 to 1999

Principal Engineer

Responsible for the cc:Mail router and directory exchange products.  Used C to implement Windows system level programs using multitasking and multiple processors.  15 million users relied on this component so reliability was a top concern.

Converted DOS mail router and directory server application to a multi-threaded Windows application, increasing hardware utilization by a factor of 20 while supporting legacy configurations of methods and batch files.

Architected and implemented TCP/IP communications on the cc:Mail Router. Used IPC and multi-threading to allow several processes to support multiple active sessions on the same port. Added multiple active session SPX.

Redesigned and rewrote majority of cc:Mail's Router and directory exchange product to work with new database design, achieving higher performance and non-stop operation.


Software engineering positions in wireless email company (RadioMail), Apple Computer, Ashton-Tate, and Nestar Systems, a LAN company.


Tools:  Visual BASIC, Object-Oriented C, C, APIs, Perl, Install Shield, Oracle Universal Installer, Lotus Notes, SourceSafe, ClearCase,  Dimensions PVCS, Make, Debuggers,, in-circuit-emulators, basic hardware tools such as volt/ohm meter and oscilloscope

Operating Systems:  Windows system programming, UNIX, Macintosh, Windows NT, PDA OS, Oracle Server environment, vxWorks embedded real-time OS,

Protocols:  Sockets, TCP/IP, X.25, IPC, Multi-threading, ISDN, Winsock

Download Resume as PDFResume_files/Respdf.pdf