GPU Tools Architect2014 - 2019Samsung
Technologies: C++, STL, Client/Server Networking/Sockets, Threads/Concurrency, Python, Linux, Windows, Django
- Architected and implemented STF, a C++11 framework that formed the core of the SGPU verification flow, used by nearly all teams in the SGPU project. STF is a collection of components and interfaces that manages the creation, inspection, and dynamic modification of test-to-GPU command streams. STF interfaces both the high-level (device driver) and low-level (hardware simulator). STF is multi-platform (x64 Linux, ARM Linux, x86/x64 Windows), client-server (TCP sockets), and concurrent (threads).
- Implemented verification userspace KMD module in STF to test low-level host interface of the GPU, which handles: GPU command stream, GPU memory access, interrupts, MMU.
- Worked in cross-functional teams (including device driver, firmware, hardware architecture, hardware implementation, RTL simulation, C++ simulation, RTL emulation, infrastructure) to implement and release new STF features, and major new features of the GPU: host interface and MMU.
- Designed and developed DMS, a python/Django/MySQL data management system—a web-based application managing publication display/visualization of GPU metrics (power, performance, area) in both table and graph format.
Senior Member Technical Staff2011 - 2013AMD
Technologies: C++, DWARF, LLVM
- Led the Heterogeneous System Architecture (HSA) compiler's debugger support effort.
- Designed debug information generation and flow throughout the HSA compiler stack, including: compiler front end, LLVM codegen back end, linker, runtime libraries, and finalizer (JIT).
- Worked closely with stakeholders from debugger, runtime, and compiler teams to ensure correct and complete debug information design and implementation.
- Wrote and presented for review an architectural design document for HSAIL compiler debug information.
- Successfully adapted industry standards (DWARF) to the nontraditional HSAIL architecture.
- Implemented custom DWARF generator for the HSAIL assembler.
- Adapted LLVM's targetindependent DwarfDebug DWARF generation module to the HSAIL LLVM codegen target.
- Supervised junior engineer in partial implementation of the LLVM debug information generation and in creating a test suite for debug information generation.
Senior Software Engineer2011 - 2011Perpetually.com, LLC (via Toptal)
- Wrote a binary media file disassembler/parser/transformer/re-assembler tool in Python.
- Added an accelerated "test" web crawl tool (Python/Django).
- Implemented a new back-end web API in Python/Django to accompany a new front-end to Perpetually's system for creating, running, searching, scheduling, and monitoring both full web crawls and test web crawls. Worked closely with Perpetually team members to design and tune the API to suit the front end's needs. Added new Django models to support the new functionality. Created extensive Python test suites for all new functionality.
Senior Software Engineer2011 - 2011Loytr, Inc. (via Toptal)
Technologies: iOS, Objective-C
- Wrote a new photo album/photo display module for MyPad for iPad.
Co-founder, CTO2011 - 2011Posylnyi, Inc.
Technologies: MySQL, PHP, iOS
- Designed and implemented MySQL/PHP back-end system that services both the Posylnyi interactive ordering website and the Posylnyi iPhone application.
- Designed database schemas to manage menus, customers, orders, couriers, restaurant locations, etc.
- Designed and implemented an iPhone application that provides an appealing, interactive menu ordering system.
- Designed and implemented a custom operator web application that includes Google Maps for managing couriers and restaurant locations, and order processing functions.
- Met with and evaluated technical service providers and contractors.
Founder, President, Lead Architect/Developer2010 - 2011KMW Solutions
Technologies: C++, OpenGL, Perl, PHP, iOS, Objective-C
- Provided freelance software design and implementation consultation services to clients around the world.
- Worked on many projects across differing systems and languages: Windows GUI programs written in C++ using wxWidgets, OpenGL entertainment application (magic 8-ball simulation), Perl scripts, PHP scripts, iPhone, and iPad applications. KMW Solutions has eight applications on the App Store as of October 2011.
Graphics Architect2001 - 2010NVIDIA, Inc.
Technologies: Internal Technologies
- Fulfilled the role of “practical visionary” by placing an emphasis on the design and implementation of working tools and systems significantly boosting productivity for large groups of engineers and architects throughout the company.
Principal Engineer1999 - 2001Believe, Inc.
Technologies: Software, Hardware
- Led the architecture of core system software and architected software/hardware interfaces.
Principal Engineer1996 - 19993dfx Interactive, Inc.
Technologies: Software, QA, Hardware
- Developed for 3dfx’s engineering team.
- Worked with software, QA, hardware, marketing, and sales group members to design and to promote 3dfx’s products.
Principal Engineer1994 - 1996Rendition, Inc.
- Led technical projects for Rendition’s 2D graphics effort, including Microsoft Windows.
Technical Lead1992 - 1994Kubota Graphics Corporation
Technologies: X Server
- Led technical projects related to X Server for three of Kubota’s 3D graphics/imaging subsystems.
Workstation Systems Engineering1990 - 1992Digital Equipment Corporation
Technologies: X Server
- Contributed to Advanced Technology Development’s core X Server group. Wrote and debugged X Server code for the DECStation 5000 workstation family’s 2D/3D graphics accelerator cards.
Unix Programmer1985 - 1987Lawrence Berkeley Laboratory
- Designed and implemented a font editor for the Versatec printer/plotter’s font files that allows the interactive creation, deletion, modification, and inspection of the glyphs in each font.