James Chow

  • Software Developer
  • Long Beach, California, United States
  • Computer Software

Previous positions

  • Senior Software Engineer at Tribogenics
  • Senior Software Engineer at United Technologies

Education

University of Southern California, M.S., Electrical Engineering (VLSI)

Background

Summary

Experienced Senior Software Engineer with a demonstrated history of working in the aviation and aerospace industry. Skilled in C++, Qt, Testing, PostgreSQL, and Unix. Strong engineering professional with a M.S. focused in Electrical Engineering (VLSI) from University of Southern California. Experience working on large desktop applications in extensive codebases. Able to isolate defects and provide fixes to stabilize large-scale systems. Detail-oriented team player with strong written and verbal communication skills.

Experience

  • Senior Software Engineer

    OrangeMed Nihon Kohden

    January 2018 – Present(1 year 9 months)

  • Senior Software Engineer

    Tribogenics

    June 2017 – November 2017(5 months)Los Angeles, CA

    • Lead software engineer in a startup environment; developed software for Watson, a handheld X-RAY alloy identification device, using C++/Qt 5.7/QML in a Raspberry Pi Linux device on a team that consisted of 2 other engineers and 1 QA • Took over the project as a benchtop prototype and matured the software into a deliverable product that was ready to sell. Identified/fixed major software design issues (I.e. multi-process, threading, state machine timing, TCP/IP, and functionality issues) • Provided technical direction to contracting companies FPT, who implemented the cloud website, and ICS, who implemented the MYSQL database and QML software modules • Added a separate cloud thread module that synchronized the acquisition data upload to Amazon Cloud AWS using JSON data format and Restful API • Implemented safety features using proximity sensor and hardware LED checks. Utilized RFID to keep track of XRAY source ID and acquisition counts • Implemented device software upgrade via cloud using a separate watchdog process • Provide guidance to QA for the setup and testing of the software • Code review all Github branches that got merged into master to ensure stable merges

  • Senior Software Engineer

    United Technologies

    September 2015 – June 2017(1 year 9 months)Costa mesa, CA

    • Lead the effort in a major release of Prism 2.0, an enterprise video surveillance system • Redesign the UI and provide new features in the application to improve the visuals and UX/usability of the application using C++ and Qt • Fixed issues with application crashes and memory leaks using Visual Studio 2015 diagnostic tools • Provide guidance to the QA group for the setup and testing of Prism • Code review for other developers to provide feedback on coding technique and catch coding errors • Introduce workflow for Perforce streams and standardize on development tools in Visual Studio • Solve customer issues through remote support sessions

  • Software Developer

    RED Digital Cinema

    October 2012 – September 2015(2 years 11 months)Irvine, CA

    • Developed various enhancements and bug fixes using C++ and Qt for the RedCine-X Pro video editing software as the main GUI developer • Introduce a new workflow for still capturing and provide support for still clips as an additional mode in the software • Enhance the video editing timeline to support audio tracks and provide new video editing features • Added support for MPEG decoding to playback Mp3 files and Mpeg-2 encoded bwf/wav files using the mpg123 library • Update the project XML import/export functionality to support audio tracks to communicate with Final Cut Pro 7 and Final Cut Pro X

  • Senior Development Engineer

    Raytheon

    March 2008 – October 2012(4 years 7 months)

    • Designed and implemented multiple C++ GUI applications using Qt, a cross-platform application and UI framework. • Wrote a C++ serial port communication application that decodes and encodes GPS NMEA data and Kearfott’s Inertial Navigation System messages for data configuration and display • Wrote a multi-threaded socket connection application that implements line filtering algorithms and queries from a PostGreSQL database to plot sonar track lines and display user-defined targets • Wrote a sonar controller that allows remote control and configuration of an AST sonar by parsing incoming raw data, populating AST-defined structures, and recording the data to disk as well as streaming over a TCP socket connection • Support time-critical sea trials/demos by testing and updating all written software to ensure successful missions..

  • ASIC Design Verification Engineer

    Conexant

    September 2007 – March 2008(6 months)Irvine, CA

    • Ran logic verification tools on synthesized designs • Modified Verilog code, worked in Unix environment

  • Intern

    Alcatel-Lucent Enterprise

    June 2006 – August 2006(2 months)Calabasas, CA

    • Developed TCL Expect scripts for interacting with the switch command prompts • Designed a database to keep track of all the Software Lab switches using Microsoft Access (Visual Basic)

  • Intern, Work/Study

    Xerox

    June 2005 – January 2006(7 months)El Segundo, CA

    • Debugged XCDM-BSP15X’s PCI-X bus compatibility with different Sun machines using an HP bus analyzer • Wrote a PERL file-conversion tool to convert captured data • Ran numerous tests of the LWC algorithm on custom images in order to observe and modify (C++) the algorithm

  • Undergraduate Researcher

    UCLA Henry Samueli School of Engineering and Applied Science

    June 2004 – March 2005(9 months)

    MEMS Lab • Designed a pump controller with a PID feedback control loop using Labview • Designed a PC board for the controller in Protel, identified and soldered suitable components to assemble on the PC board

  • Visiting Researcher

    Carnegie Mellon University

    June 2003 – August 2003(2 months)Pittsburgh, PA

    • Worked in a UNIX environment, developed PERL scripts • Modified the Lemur Toolkit (C++) in order to fit the needs of the project

Education

  • University of Southern California

    M.S., Electrical Engineering (VLSI)

    2005 – 2006

  • University of California, Los Angeles

    B.S., Electrical Engineering (Computer Engineering option)

    2000 – 2005

Skills & Expertise

  • Qt
  • Socket programming
  • PostgreSQL
  • Unix
  • Linux
  • C/ C++ (Object-Oriented Programming)
  • C++
  • Testing