Frank M. Pagliughi
Over a dozen years of experience designing and implementing instrumentation software for industrial automation and scientific research, with the ability to work independently or with a group of software and/or hardware engineers. Skilled in software architecture, OO/UML design, embedded real-time systems, Windows programming, communications, and software quality.
Particularly adept at the rapid implementation of control and data acquisition systems, complete with host communications, Windows user interfaces, and diagnostics, as well as knowledge of machine vision and automation. Significant experience with microcontrollers, DSP chips, and motion control systems for stepper motor and servo control. 12 years C++ experience, with 5 years of C prior to that; 8 years MFC; 7 years RTOS, 2 years Microsoft .NET.
Languages: C++, C#, C, Assembly (various), some Java
Processors: x86, ARM, Motorola 683xx, HC11/12, TI and Analog Devices DSP
PC Operating Systems: Win32 (XP, 2k, NT, 98/95), Linux, DOS
Real-Time OS’s: eCos, RTKernel, Phar-Lap ETS, some VxWorks
Communications: TCP/IP, USB, RS-232/422/485, SPI, I2C
Tools: MS DevStudio .NET (C# & C++), GNU Tools (gcc, gdb, etc), SlickEdit, MS DevStudio 6, Rational Rose, GreenHills Multi 2000, TI Code Composer, Visual Test
Technologies: Microsoft .NET Framework, including WinForms, WebForms; MFC, COM/ATL, STL, TCP/IP
Web Technologies: ASP.NET, ADO.NET, Dreamweaver MX, ASP, JavaScript, SQL
Boston University, Boston, MA
Independent Software &
Systems Engineer, Medford, MA August 2000 – Present
Formed a consulting company for software and web design. Jobs have included:
·
Full USB Device (Slave) Software Stack. Wrote a
fully portable communications stack for USB devices that can be used with an
RTOS or without. Uses interrupt, DMA, or polled modes, providing standard
read() & write() interfaces to applications. Wrote complete native device
drivers for eCos for the Philips D12 & ISP1181 chips.
· Robotic camera system for genetic research. Used off-the-shelf motor controller, camera, and frame grabber to capture images of samples scattered over a collection plate. Wrote the Windows application in C# for MS .NET, and wrapped all 3rd party DLL’s into classes for use with .NET.
· Automobile cutoff timer. Embedded board allows a vehicle to run for 30 days then disable ignition until mechanic resets system with a key. Used an off-the-shelf (Tern) board and wrote application in C++. End customer: mid-western automobile leasing company.
· System code for a custom Motorola 68332 board. Wrote the startup code, application framework, and serial communications drivers using the Green Hills Multi 2000 compiler in Embedded C++. Also helped with hardware debug and wrote a variety of diagnostics programs.
· “IP Monitor” program that watches the IP address of a home DSL/Cable connection and e-mails updates to operator. Used with web servers and home security cameras behind a dynamic IP address.
· Back-end database and SQL middle-ware for several retail companies, including real estate and independent record company. Used ASP.NET.
Formed the software group at a start-up company specializing in instrumentation for genetics research. Hired and managed a group of software engineers who created two instruments that went into production in under a year: a robotic “spotter” to make DNA microarrays, and a scanning confocal microscope to read the arrays. Architected the software design from embedded control to Windows interfaces, all based on direct user requests (before a marketing group was assembled). Personally implemented the embedded software for the spotter and the user interface for the microscope. Systems used MFC/C++ and J++ front-ends, COM (ATL & J++) components, embedded controllers (PC/104 and TI DSP), and UML designs. The company had sales of over $13M in its first full year of production. Left the company upon its purchase by Affymetrix, Inc.
Independent Software & Systems Engineer, Arlington, MA March 1993 – January 1998
Formed software and systems contracting company, originally starting as an independent consultant, and eventually growing a small group of engineers and support staff. The company specialized in machine control, industrial automation, medical research equipment, and signal processing applications, usually adding all of the software support to an existing group of electrical and mechanical engineers. Applications included the following:
· A scanning confocal microscope for genetic microarrays – the General Scanning ScanArray2000. Used a TI TMS320C32 processor board for embedded control with a Windows front-end written in MFC/C++
· A fault-tolerant PC-based acquisition system to test the long-term elasticity of fiber optic cable with a tensile force applied over several months. Used Galil motor controller boards and Computerboards acquisition. End Customer: AT&T/Lucent Technologies.
· Numerous translation boards for connecting sensors and smart tools to proprietary automotive networks, such as translations from RS-485 to TCP/IP. Used PC/104 boards and proprietary Motorola 68332 solutions.
· A PC-based acquisition system to gather information about the distribution of gases in the human lungs, using the Multibreath Nitrogen Washout method. MFC/C++ on Win95, using a Data Translation A/D Board. Customer: Boston University.
· Several material strength testing systems used to test the stresses and strains applied to a wide variety of manufactured items, from nuts and bolts to snowboards to the concrete used by the highway department of Greece.
· User interface for a complete pharmaceutical laboratory automation system to search for potential drug targets. The system scheduled chemistry experiments to be performed by a factory robot, and reported results. MFC/C++ on Windows 3.1. End Customer: Sterling Pharmaceuticals.
· Complete startup code and C library customization for Motorola 68332 boards.
SPARTA, Inc. Lexington, MA July 1990 – February 1993
Software Engineer
Developed high-performance digital control and data acquisition systems using Analog Devices DSP’s (ADSP-21xx) for 3D laser imaging systems. Tasks also included hardware debug, hardware/software integration, image processing, PC/DOS user interfaces, video and communications drivers, and data compression. Left the company to start Skyway Systems.
Boston University, Boston, MA Dec 1986 – July 1990
Research Fellow,
Programmer, Teaching Fellow
· Developed an integrated software package for determining the mechanical impedance of the human respiratory system, including a novel approach for testing infants. It was essentially a spectrum analyzer that treated the lungs as a black box, using sound (pressure) to induce airflow, and then determine the impedance over a fixed frequency range.
· Wrote a complex computer simulation of the human lungs.
· Taught an engineering lab course to third-year biomedical engineers in basic electronics, data acquisition, signal processing, and computer simulation. Handled all aspects of the course including lecturing, creating assignments, grading, and developing software for student use.