Software Engineer Resume
Roxbury, MassachusettS
SUMMARY:
Software engineer developing software in C++ or C#.
TECHNICAL SKILLS:
- C/C++, C#/.NET, OpenCV, Visual Studio, MATLAB, Python, Scheme, STL, Boost.
- Computer Vision, Machine Vision, Algorithm Development, Halcon, SVN, Git.
- Medical devices, Image Processing, Warehouse Automation, Robotic Palletizing
- Agile/Scrum, OOAD, UML, Design Patterns, Embedded Systems, VxWorks, Linux
EXPERIENCE:
Software Engineer
Confidential, Roxbury, Massachusetts
Responsibilities:
- Developed software to control a printer “farm” to print gift cards and credit cards.
- Developed software in C++ and C# to control and coordinate a group of card printers to encode, print, and emboss cards.
- Worked from home with some onsite work during deployment and troubleshooting.
Principal Software Engineer
Confidential, Irvine, California
Responsibilities:
- Developed architecture, software and processes for a startup medical device company.
- Developed GUI, algorithms, and control software in C++, OpenCV, MFC.
- Device’s laser etches a lens within a cataract patient’s own IOL to correct their vision.
- Developed lens and optics algorithms, control of laser scanners, 6 stages, OCT image processing, GUIs, computer vision profiling/calibration, and complete system software.
- Implemented Agile/Scrum, SQA processes, and automated testing framework.
- Mentored junior software engineers and designed all software architectures.
Principal Software Engineer
Confidential, Wilmington, Massachusetts
Responsibilities:
- Developed algorithms for advanced warehouse automation in C++ and C#.
- Developed patented world - class pallet planning algorithm in C++ that builds densedynamically stable eight foot tall pallets. Currently palletizes 10,000+ cases per day.
- Developed software to perform pattern recognition and classification of 10,000 different SKUs of cases traveling 120 feet per minute along a conveyor.
- Developed algorithms in C# to control and coordinate a fleet of robots to store and retrieve casegoods optimally in a large automated warehouse.
- Developed software to dimension cases in 3D using two low-cost Kinect cameras.
- Alpha tester for Xbox One’s Kinect for Windows time-of-flight 3D point cloud camera.
Senior Imaging Software Engineer
Confidential, Waltham, Massachusetts
Responsibilities:
- Developed MATLAB and C++ software for analysis of digital microscope slide images.
- Developed algorithms in MATLAB to analyze circulating tumor cell diagnostic tests.
- Ported various MATLAB algorithms and Excel programs into C++ applications.
- Specified hardware for deployed systems, and modeled and improved software architecture.
Senior Software Engineer
Confidential, Oakland, California
Responsibilities:
- Developed C++ software for automatic person detection, extraction, and analysis.
- Ported face detection, person segmentation, SmartCrop, SmartCompose, white screen background removal, and skin tone transfer algorithms from MATLAB to C++.
- Extensive use of STL, Boost, OpenCV, and IPP to optimize performance.
Senior Software Engineer
Confidential, Aliso Viejo, California
Responsibilities:
- Developed C++ software for automated medical microscopes and telepathology.
- Developed algorithms for calibration, autofocus, color space analysis, tissue classification, and cell segmentation for both brightfield and fluorescence images.
- Cell segmentation via color space thresholds, watersheds, and blob and texture analysis.
- Developed digital pathology applications using Java, ImageJ, and MATLAB.
Algorithm Engineer
Confidential, Anaheim, California
Responsibilities:
- Developed C/C++ software for vehicle-mounted camera-based safety system.
- Camera monitors the road in real time for lane changes, tailgating, and collisions.
- Developed algorithms in MATLAB and ported to C++ for Intel XScale PXA processor.
- Developed vehicle tracking software for adaptive cruise control and object detection and classification algorithms for collision avoidance and pre-crash safety systems.
Principal Software Engineer
Confidential, San Diego, California
Responsibilities:
- Developed C++ software to control an infusion pump (class II medical device).
- Software domain lead - Developed real-time, object-oriented software using C++UML, OOAD, OSE Real Time OS, MFC, CASE Tools, and State Diagrams.
- Software controls a medical infusion pump including a GUI, motion control, wireless communication (TCP/IP), patient data management (XML), and drug library database.
- Performed vehicle detection and classification in varying conditions utilizing pattern recognition, feature extraction, background updating, and shadow removal.
- Located, segmented, and classified low-contrast defects in continuous web fabrics and films via auto-thresholding, blob analysis, texture analysis, and statistics.
Senior Software Engineer
Confidential, San Jose, California
Responsibilities:
- Developed machine vision software for semiconductor, Confidential, and electronics applications.
- Developed embedded GUI and system control software.
- Developed C++ software for inkjet cartridge inspection, probe mark inspection, defect classification, photometric calibration, and optical distortion calibration.
- Inkjet algorithms currently inspecting 100% of HP printheads worldwide.
- Created general machine vision algorithms for part finding, alignment, auto thresholding, blob analysis, image calibration, and image averaging.
- Developed interfaces for in-house frame grabber and DSP pattern recognition boards.
Manufacturing Development Engineer
Confidential, Corvallis, Oregon
Responsibilities:
- Developed software and hardware for in-house automated wafer inspection machines.
- Developed software in C to control automation and perform machine vision inspection of dimensions, thin film registration, mask verification, and miscellaneous defects.
- Reduced human inspection requirements by sixty percent and improved process variation from 74 microns to 5 microns via process feedback.