Jonathan BenDor **** Caminito Eastbluff #**. La Jolla, CA. 92037
home: 858-***-**** mobile: 858-***-**** abgiky@r.postjobfree.com
SUMMARY
0. Extensive hands-on experience developing software and firmware for a
broad variety of application domains, including: Medical Devices, Genomic
and Life-Sciences Instruments, Bio-Informatics Utilities, Projectile
Target Tracking, Telemetry, Images capture and analysis, Android-based
Smartphones and Tablets, Audio/Video Transport, Military handheld devices,
Motion Control, Sensors data capture and processing, Communication
protocols over TCP/IP, RS232, I2C, USB, and more.
1. Experienced creating real-time multi-threaded software and firmware,
efficient algorithms, and user-friendly GUI.
2. Experienced with contemporary tools, including: Visual Studio with .NET,
Eclipse, Netbeans, MatLab.
3. Experienced developing applications for Windows, Linux, and embedded
platforms (WinCE, uC/OS, VxWorks).
4. Experienced developing and debugging with C, C++, C#, Java, Assemblers
(8051, x86, ARM, TMS320, MSP-430).
5. History of technical excellence, productivity, creativity, teamwork, and
projects completion on schedule/budget.
6. U.S. Citizen with advanced academic education, including: B.Sc.
Mathematics, M.Sc. Computer Science.
EXPERIENCE
GoPro Inc. (2012) Software Developer, Consultant
0. Hero-HD2 Camera - Created RTSP service application in "C/C++" (for
Windows and Linux) to filter and transport H264 video received from the
camera. Created Android native libraries to decode H264 video into YUV
data and to convert YUV to RGB. Developed features for an Android
application to display live video received from the camera.
Duncan Parking Systems Inc. (2012) Software Developer, Consultant
0. Liberty Meters - Developed real-time firmware in "C" using the Code-
Composer-Studio IDE for an MSP430-based board to support wireless
communication between parking meters and remote servers.
IP Video Networks Inc. (2011) Software Developer, Consultant
1. vCortex - Added features and fixed bugs in software for analyzing the
quality of (MPEG,AVC) video streams. Used C# and VS2010 for the vCortex
Windows application. Used C++ for the algorithms that performed the
frame-by-frame analysis.
Android Projects. (2010-2011) Software Developer, Consultant
0. Remote-Sensor-Monitor - Created components of Android Tablet application
which received data from remote sensors, detected alarm conditions, and
sent alert messages to a target phone via a web-service using a REST
protocol. Created native Linux library which allowed the application to
read sensor data (e.g. door-open/shut) from an RF receiver attached at a
USB port.
1. WiFi-Network-Monitor - Created Android Smartphone application which
obtained data about current WiFi connection and available nodes, sent
reports to remote database service, and received regional WiFi network
information from the server. Created (using Netbeans and Java) a
prototype server application on PC running Windows or Linux, and
prototype MySQL database.
Accumetrics Corp. (2009-2010) Software Developer, Consultant
2. Blood-Platelets-Analyzer - Created software and firmware for a new
medical instrument using ARM-9 and ARM-7 processors. Customized a board
support package (BSP) based on Windows-CE-6. Created components of
instrument's WinCE application. Created software (VS2008, C#, C++, MFC)
for user-friendly editing of assay parameters and for offline analysis
of assay data.
CHI Systems Inc. (2009) Software Developer, Consultant
3. GPS-Navigation - Created software and firmware interfaces to commercial
and military GPS devices. Created mid-level components to provide
navigation services by communicating over RS232 and USB channels.
Software was created (with C++) for both Windows and Linux. Prototype
system testing was performed on a security-enhanced Linux platform.
Prototype was ported to an embedded platform with the Micrium uC/OS
running an ARM-9 processor on an ATMEL board.
Invitrogen Corporation (2008) Software Developer, Consultant
4. DYNAL-Fluidics-Control - Created embedded firmware for an interactive
instrument controlling valves for micro-fluidics assays. The device used
an ATMEL board with an ARM-9 processor and the MICRIUM kernel uC/OS-II.
The real-time firmware was developed using IAR's EWARM toolset. Also
designed and created a Windows-based application and supporting
libraries using C# and .NET allowing users to create assay scripts for
the device and to communicate with the device via RS232.
American Technology Corporation (2008) Software Developer, Consultant
0. LRAD-System-Control - Created a GUI-rich application and supporting
libraries using C# and .NET to monitor and control the following devices
in a system used for security enforcement: LRAD audio amplifier,
Pan/Tilt unit, MAXABEAM spot lamp, BARIX audio streamer, SONY video
camera, AXIS video Server, and Direct-X for audio/video playback.
Wintriss Engineering. (1999-2008) Software Developer, Consultant
1. Launched-Projectiles-Tracking - Designed and developed using C++/MFC
several software components for an embedded WinXP-based system for
detecting and tracking fast moving projectiles during their first few
milliseconds of motion. The instrument combined a camera, flash strobes,
radar, audio sensors, temperature sensors, and spatial alignment
sensors. My contribution to this project included: a DCOM server
providing database capabilities to local and remote clients; an image
analysis and management subsystem, a trajectory analysis and rotation
analysis subsystem and supporting mathematical components, a calibration
subsystem for measuring and correcting optical distortions, and several
graphical user interface components some of which were implemented with
C# and .NET. Also ported this software for a miniaturized device with
similar capabilities using the TMS320-DM6437 chip. Also created
applications and libraries in C# and .NET for camera focusing and
calibration, device diagnostics, and shots analysis.
2. DMS - Designed, implemented, and documented DMS, a Windows-9X/2K/NT
application used in an automated vision system for quality control of
tiles on an industrial production line. The program performed real-time
analysis of monochrome images, detected edges of tiles against
background while allowing for shift and rotation, computed dimensions
based on a library of calibrated information, determined which tiles
should be rejected, and provided statistical reports of inspected tiles.
Talon Communications Inc. (2008) Software Developer, Consultant
0. NAND-Flash-Archive - Created firmware for the NAND-Flash archiving
subsystem of an instrument that collected data from sensors measuring
and monitoring vital signs. The device used an ATMEL board with an ARM-7
processor. The real-time firmware was developed using IAR's EWARM
toolset.
Digital Force Technologies Corporation (2007) Software Developer,
Consultant
3. D.R.O.P - Created software and firmware for a remotely-controlled device
with image-capture and motion-detection sensors. The software was WinCE-
based, and was implemented in C++ using VS-2005 with MFC. The firmware
was created using WinAVR toolset for the AT-MEGA8 chip (ATMEL) that
served as a low-power watchdog and communicated with the main device via
I2C.
Nanogen, Inc. (2003-2007) Software Developer, Consultant
4. NGI-IPL - Created an image manipulation and analysis library for the
company's newest lab-on-a-chip instrument. Used C# and .NET for
implementing the image manipulation functions, and for wrapping the
C/C++ implementation of legacy image analysis functions. Used C# (.NET)
to develop a user-friendly standalone test tool for verifying the IPL.
5. Chip-Calibration/Inspection - Created C# (.NET) software for thermal-
calibration & production quality control of DNA chips.
6. Chip-Conductivity-Tester - Created C# (.NET) software for production
quality control of electrical conductivity of DNA chips.
7. Cartridge-Assembly-Tester - Created C# (.NET) software for production
quality control of deliverable DNA cartridges.
Axiom Biotechnologies Inc. (2001-2002) Software Developer,
Consultant
Designed/Implemented enhancements for real-time software in fluorometer-
based instruments for high throughput pharmaceutical screening.
Designed/Implemented real-time data-acquisition and signal-processing
Windows based software for a prototype flow-cytometer. Created conceptual
design of embedded system for a microfluidics-based flow-cytometer.
Participated in the Patents/IP group and the Database/Bioinformatics
group. The company dissolved in 9/2002 after takeover.
Illumina, Inc. (1999-2001) Senior Software Engineer/Scientist
Actively involved in research and development of image processing
software to detect microscopic spheres, which were coated with
fluorescent biochemical sensors and seated in microscopic wells, which
were etched in tips of fiber-optic bundles. Responsible for developing
software to control image capture devices, and creating efficient
algorithms to detect optical features in high resolution monochrome
images. Designed, implemented, and documented FiberWorks, an image
processing application running on Windows-2K/9X/NT. Used Microsoft Visual-
Studio, MFC, C++ to develop and debug this application. Used Microsoft
Source-Safe for configuration control. Developed instrument control
software in C++ and Java, using Java-Native-Interface (JNI) to
communicate with low level DLLs. Developed LabView and MatLab software to
provide a graphical user interface (GUI) to control the initial prototype
of a chemical vapors detection instrument. Developed MatLab software for
statistical analysis (regression/correlation/clustering) of data derived
from image sequences captured by this instrument.