Jan. 2018 – ongoing, part-time Lahey Medical Center,
Burlington, MA Developing a Graphic User Interface (GUI) for a real-time medical imaging application. The images are acquired with a PC-based frame grabber
(BitFlow, NEON) and processed to extract hyper-spectral information. The GUI enables the human operator to control the image acquisition and the
hyper-spectral processing. It is written in C++ and uses extensively Qt components and classes.
2016 – October 2018 Electro Standards Laboratories,
Ported, from MATLAB to C, control algorithms for arresting planes
landing on aircraft carriers. Maintained and evaluated the control software using MATLAB/MEX tools. Wrote MATLAB functions
to facilitate the evaluation and plotting of key signals. Set up a Linux-based system (RTD PC-104, Linx Software Technologies)
that executed the control algorithm. Generated documentation per DOD’s guidelines: Software Development Plan (SDP), Software Requirements Specifications (SRS), and
Software Design Documentation (SDD).
2016 – June 2016
Haemonetics Braintree, MA Designed, coded, checked and documented
unit tests used to validate formal requirements for a plasma extraction device. The unit tests verified low-level driver
requirements such as: ADC, TCP/IP, GPIOs, RTC, and system clocks, mid-level requirements such as: motor controllers and
bowl optics, and high-level requirements such as: vein pressure estimation and monitoring.
September 2014 –
February 2016 MTechnology Saxonville, MA
fault tree analysis studies to assess the reliability of 24/7 large data centers and hydraulic control systems used in
offshore oil explorations. Used SAPHIRE, a probabilistic risk assessment tool developed at Idaho National Laboratory.
December 2014 – October 2015 Sunrise Technologies Raynham, MA
implemented, tested and documented a lighting controller system running on MSP430 and ADE7753 Metering Chip Work focused
on the controller's task scheduler, metering, light control, diagnostics and radio protocol features.
March 2014 –
July 2014 Adaptive Wireless Solutions Hudson, MA
involved an industrial Central Controller (CC) connected to remote sensors via BLE and a WirelessHART network. Implemented,
unit tested and documented a set of HART commands and responses meant to facilitate data exchanges between the controller
and the HART network. Designed a Coordinated Universal Time (UTC) synchronization service between the HART network and the CC. Used open-source Quantum
Leaps®, an event-driven, RTOS-like framework.
The CC runs on a Silicon Labs MCU with Eclipse as development environment.
August 2013 –
October 2013 Onset Computer Corporation Bourne, MA
Designed, implemented in C,
unit tested, and documented a Command Line Interface (CLI) module for supporting Hardware and QA departments in debugging
and validation of a Bluetooth-controlled data logger. This device consists of Microchip and Nordic (ARM) processors that
exchange data under the RS-232 protocol.
2011 - 2013
Bose Automotive Systems Division Stow, MA
for the DSP development of a 20-channel amplifier from design to validation. Tasks included: formulation of requirements
and software specifications, DSP block design, C coding on Blackfin DSP, integration into a custom-tailored platform and
supporting micro control software, hardware, and testing engineers assigned to the project.
Optimized existing Blackfin DSP assembly
routines and wrote scripts and programs for automated unit testing and benchmarking.
and unit-tested DSP code (Blackfin) for amplifiers equipped with HDMI and analog only inputs.
2010 – 2011
Re-factored using C the existing TMS3206414-based channel emulation software
into DSP/BIOS threads for optimal execution under real-time constraints.
the logic on the DSP’s side for interfacing
to the system’s FPGA.
code to support dynamic communication channel emulation via user commands and controls.
Developed DSP software for a TMS320C55-based electrocardiogram instrument. Tasks included: sample scaling,
decimation, and offset removal; PLL for clock synchronization; control of multi-channel data acquisition via EDMA and
McBSPs; raw data uploading via a USB link; data analysis and filtering using Matlab.
Developed DSP software for a TMS320F2808-based system for controlling a fuel-cell power plant.
a multi-threaded, multi-processor modular platform to monitor the system’s currents and voltages and implement the DC to AC conversion.
signal processing blocks for monitoring amplitude and frequency deviations from the grid ranges specified by the IEEE 1547
Developed CAN bus communication protocols and drivers for
ADC, A/D, I2C, SCI-UART, CAN, and PWM.
a flash programmer and a boot loader in the application to facilitate remote software upgrades.
Valeo Raytheon Systems
Developed software for an automotive blind spot detector on a TMS470 micro-controller
and an ADI Blackfin BF531/3 DSP.
Wrote drivers for timers, interrupt-based
DMA transfers, and SPI-UART and SPORT ports.
Re-factored some of the
communication and signal processing blocks.
Teledyne-Benthos North Falmouth,
Developed multi-threaded DSP software for an underwater acoustics system using an Orsys board with
a TMS320C6711 DSP.
Wrote the signal processing blocks to compute
an object’s bearings in relation to a directional
transponder. Tasks included passband to baseband frequency conversions, cross-correlations, and optimal table searches.
2004 Texas Instruments–Sensors & Controls (Sendata) Attleboro, MA
software for a rotational equipment monitor comprising an Altera Nios SOPC and a TMS320C6713 DSP.
the HPI-based interface between the Nios and the TMSC6713 processors, the HPI-based boot loader for the DSP and the interrupt
based data acquisition software using the processor‘s
Re-factored the existing video processing code for a teleconferencing system
running on a TMS320C64-based board.
Optimized the picture-in-picture
(PIP) and RGB/422 format conversion modules for minimum execution time.
and improved the performance of legacy EDMA/QDMA video acquisition software.
Temptronic/inTEST Corporation Sharon, MA
a PID controller for temperature testing that ran on an Intel 86189-based Watlow board.
a tuning utility for selecting the PID’s
Kp, Ki, and Kd based on the DUT (device under test) step response.
United Electronics Industries Canton, MA
and simulated a constrained Model Predictive Controller (MPC) for general purpose process control. Formulated the controller
problem, derived the algorithm, and validated its implementation in Matlab.
Virtual Ink (Newell Rubbermaid) Charlestown,
Designed and implemented a lossless compression algorithm for storing the coordinates of a moving pen
in DSP memory.
The compression code was written in ADSP-21xx
Assembly; the decompression code was written in C++ for a PIC processor.
Delphi Communication Systems
Re-factored G.711 and GSM vocoder software provided by the ITU/ETSI standard
body for reentrancy and optimum execution time.
Voice Activity Detector (VAD) and software modules for Discontinuous Transmission (DTX) and Substitution and Muting of Lost
Frames according to ETSI GSM FR standard.
Integrated a V.34 software
modem into a customer’s existing telephony
Used C and Assembly on TMS320C62 and ADSP-21xx.
Eye Research Institute
Wrote C and Matlab code for investigating the eye sensitivity to contrast.
software utilities for display instruments used by the visually impaired.
Quintus Corporation (Avaya) Acton,
C code for telephony servers supporting Meridian, DMS100 and Aspect switches on Windows NT and UNIX platforms. Used Dialogic’s CT-Connect API.