Senior Engineer, Software Integration2021 - PRESENTPacBio
Technologies: C++, C++20, Red Hat Linux, Bash, Python, GCC, Clang
- Developed a C++ build system to handle all of our build variants across project dependencies and third-party libraries. It's based on the Conan package manager and works with libraries such as HTSlib, minimap, and Boost.
- Included GCC, CLANG, and NVCC as compilers and enabled build variants with sanitizers.
- Incorporated STL debugging for continuous integration and static LTO/fast-math for releases targeting different versions of GNU C Library.
- Implemented and integrated machine learning feature extraction and model inference workflows on highly parallelized multithreaded applications.
Senior Software Engineer2018 - 2021SAS Institute
Technologies: Machine Learning, WebAssembly, Data Visualization, Python, C++
- Developed cross-platform data visualization components for SAS Graph products (ODS Graphics, SAS Viya, etc.). Components included data-driven layouts, large datasets, and cross-compilation to run on Android, iOS, Windows, Mac, Linux, and WebAssembly.
- Contributed significantly to our large build infrastructure and tools, including automatic project generation for a wide range of IDEs, test suite optimizations based on project changes and dependencies, and so on.
- Promoted state-of-the-art tooling for C++ development, including CLion, Resharper C++, clang-tidy, and clang-format.
Senior Software Engineer2017 - 20183D Systems
Technologies: Windows Desktop, 3D Geometric Analysis, C#, C++
- Proposed algorithms to optimize job slicing process for large build volumes that have repeated parts in the build platform.
- Developed a visualization tool to load and inspect large print jobs that won’t fit in PC’s RAM unless some compression is applied. This tool is now widely used by process engineers to validate voxel data before starting to print parts.
- Designed automated tools to help to synchronize complex parameter sets from individual printers (developed by process engineers) and the central database used by the printing software.
Senior Software Engineer2015 - 2016Invetech
Technologies: Real-time Systems, C#, C++
- Developed instrument software for FDA-compliant medical devices that deal with medium-throughput hematology and pathology staining.
- Successfully designed and implemented critical software components (on-board mixed reagent preparation, flow cytometry measurement procedure, and an interim pass-through communication model).
- Contributed greatly to reduce the turnaround time by investigating more effective ways to produce instrument execution plans for pathology staining (scheduling, graph operations).
- Solved bugs in a large codebase that required exceptional problem-solving skills combined with broad domain knowledge in areas such as distributed systems, data mining, visualization, signal processing, and more.
Research Software Engineer2014 - 2015Bionics Institute
Technologies: CMake, Google Mock (GMock), OpenCV, Boost, Qt, Windows Presentation Foundation (WPF), C#, C++
- Developed, tested, and maintained clinical software applications to test and calibrate retinal implants in the scope of the first clinical trial of the first Australian prototype.
- Implemented software for signal processing and analysis, psychophysics research, and control of stimulation parameters for device use in patients.
- Designed and implemented research experiments involving real-time eye tracking, position tracking, video feeds, and computer vision algorithms for the first Australian prototype of bionic eye tested in humans.
- Developed novel pulse stimulation strategies that significantly reduce the fading effect of visual percepts when stimulating continuously a visual prosthesis.
- Introduced automated testing frameworks to systematically ensure patient safety after introducing code changes in experiments and stimulation research.
- Added support for new neuro-stimulation devices to be used in patients implanted with a visual prosthesis.
Software Engineer2012 - 2014Braendler Engineering
Technologies: Image Processing, Computer Vision, Windows Forms, C++, C#
- Developed software components in customized machine inspection systems relying on computer vision (image analysis, algorithm design, coding, testing, performance optimization, integration with industrial cameras, HMI, and other hardware, and more).
- Created a panoramic capture system to image wind turbine blades and other assets (capture, storage, processing, condition analysis, and reporting components).
- Proposed highly-capable computer vision algorithms that allowed the completion of pending projects of high technological complexity (defect detection on platinum strips, sealed bags, and printing inspection systems).
- Built all the software components of a panoramic, ground-based, high-resolution image capture system to inspect assets from the ground. This inspection system has been successfully deployed in Australia and Europe to inspect the blades of more than 300 wind turbines, concrete ceilings, cooling towers, steel structures, and so on where direct access was difficult and involved health and safety issues.
- Developed an image management system to annotate and visualize results from asset inspection. This software has served as a platform to manage high-resolution imagery data generated from asset inspections, annotate/measure defects, and generate deep zoom imagery to allow fast and detailed visualization of giga-pixel panoramas.