Curriculum Vitae
Gabriel Schulhof
** *** *********, ****** ***** Margarita, CA, 92688
Phone: +1-669-***-****
Email: ***************@*****.***
Education
• 2003-2006: Calgary, AB, Canada
University of Calgary: M. Sc. in Electrical Engineering
Thesis: “QCADesigner: From Utility to Application”
Co-authored QCADesigner, a GTK+-based Open Source quantum-dot cellular automata
(QCA) design and simulation tool
GUI upgrade and modernization (GTK+-2.4):
• PostScript printing interface
• Multilayer support
• Object orientation of procedural code
• Multiplatform support (Windows, Linux, Solaris, OSX)
• String translations via GNU gettext: German, Hungarian, Romanian, French, Polish, Italian
• API documentation via gtk-doc
Reduction of numerical errors
Scaling of data structures and simulation engines to large data sets
• 1997 – 2002: Windsor, ON, Canada
University of Windsor: B. Sc. Hon. Software Development
• 1997 – 1997: Windsor, ON, Canada
Catholic Central High School
• 1988 – 1993: Temeswar, TM, Romania
Nikolaus Lenau Lyzeum Junior High School
Publications:
• “Writing Node.js Bindings – General Principles”[1]
• Presentation[2] from Node.js Interactive Europe 2016, and Node.js Interactive North America 2016
• Presentation[3] from JerryScript Summit 2017
• IEEE[4]
• ACM[5]
• “In Memory Of Travails”[6] – Presented at
GraphQLConf 2024
Conf42
JSNation US
API World 2024
Work Experience:
• 2023 – 2025: Irvine, CA
Auction.com – Lead Software Engineer
Maintained GraphQL Deployment
Reduced operating costs by improving CPU and memory consumption
Implemented adaptive security
Implemented streaming uploads and downloads
Node.js-based Service Maintenance
Upgraded services from Node.js 16 to Node.js 22
Maintained authentication infrastructure
Implemented framework for cloud events-based tracking of user actions
SRE
Automated npm package publishing and upgrading using Jenkins
Migrated Node.js and Java services from Intel to ARM
Reduced code duplication during kubernetes manifest generation
Compliance with Real Estate regulations
Collaboration
Provided enablers to various product teams for their requirements
Presented the design and implementation of mechanisms needed across product teams in order to facilitate their adoption.
Trained peers in coding and design best practices, highlighting performance, readability, and reusability implications via presentations and peer review. Tools involved: Node.js, yarn, npm, Jenkins, Groovy, Java, bash, kubernetes, AWS (S3, Secrets Manager, ECR, CloudWatch), Apache Kafka, redis, reststop, TypeScript, docker (and podman), Twilio, Linux, OSX
• 2021 – 2023: Hawthorne, CA
Space Exploration Technologies Corp (SpaceX) – Senior Software Engineer
Designed C++-based transpiler for domain-specific language and integration into launch vehicle control software stack featuring real-time execution and memory access guarantees
Designed and implemented launch vehicle control systems code, including personnel-safe considerations
Implemented context-aware code search tool
Participated in scrum-driven development process
Practised Class A Software Development Process for safety-critical systems
Experience complying with federal regulations (FAA) Tools involved: C++, bash, bazel, q-emu, python, lit application framework, YAML, Linux
• 2011 – 2021: Santa Clara, CA; Toronto, ON, Canada; Espoo, Finland Intel Corporation – Staff Software Engineer
Workload optimization
Optimized Node.js-based workloads for performance on Intel Architecture Tools involved: C, C++ Node.js, mongodb, ApacheBench (ab), docker
Node.js:
Node.js Collaborator (2018 – present)
Member of Node.js Technical Steering Committee (2018 – 2021, emeritus since)
Participated in the ABI-stable Node.js project[7], the goal of which is to create a VM- agnostic ABI-stable C API (Node-API) for Node.js add-ons.
Migrated part of Node.js’ test suite to GitHub actions.
Participated in JerryScript[8] and Zephyr.js[9] to enable Node-API and thus source-level compatibility with Node.js for embedded devices.
Tools involved: Node.js, Jenkins, npm, github, readelf, C++, C, YAML, JavaScript, Linux
IoT:
Maintained iotivity-node[10] – a Node.js C++ add-on for IoTivity[11] and the implementation of a high-level JavaScript API for OCF-compliant[12] devices.
Ported iotivity-node to Node-API to validate the API design.
Completed SDL process for iotivity-node.
Created Node.js C++ bindings for the soletta[13] IoT framework, including main loop integration[14] between libuv and soletta.
Contributed to JavaScript IoT REST API server interface.
HTML5 UI Framework Development:
Contributed upstream to the jQuery, jQuery UI and jQuery Mobile HTML/CSS/JavaScript frameworks as part of the jQuery Mobile core development team.
2016 Google Summer of Code jQuery Mobile mentor
Co-authored and maintained a jQuery Mobile-based Web UI Framework[15]
Collaborated with S-Core (A Samsung-owned company) on moving Web UI Framework towards compliance with jQuery Mobile quality standards. Tools involved: jQuery, jQuery Mobile, grunt, Node.js, github, Google docs, HTML, CSS, JavaScript, Linux
Project Representative Director – jQuery Foundation
Liaison between the Foundation projects and the Board of Directors, bringing the concerns of the projects to the attention of the Board, and consulting with projects on the direction the Board is considering taking.
Helped negotiate the details of the transition from the jQuery Foundation to the JS Foundation with existing projects.
Apache Cordova
Enabled command line work flow for Tizen.
Ported core plugins to Cordova 3.1.0, and Tizen 2.2 Tools involved: Node.js, Tizen SDK, bash, C++, JavaScript
Maintained a synchronization front-end for MeeGo. Tools involved: C++, QT, QML, SyncEvolution, Linux
• 2006 – 2011: Helsinki, Finland
Nokia Oyj. – Software Engineer
Developed and maintained several software packages as part of the Internet Tablet and smartphone product line, such as the N800, N810, N900 (GTK+), and N9 (QT, QT Quick).
Participated in scrum-driven development process Tools involved: GNU C compiler, GNU autotools, q-emu, Debian GNU/Linux, Ubuntu OSS packages: GTK+, gtkhtml, hildon-help, Clutter, D-Bus, bash, C++, QT, QML.
• 2001 – 2002: Windsor, ON, Canada
AgentWare Systems – Software Engineer
Deployed and contributed to Linux-based engine assembly line tracking and data collection system.
Tools involved: Java, AIX, Red Hat Linux, Tomcat, Apache, MySQL, Allen-Bradley PLCs
• 1997 – 2001: Windsor, ON, Canada
DSR Systems – Software Engineer
Automated engine assembly line repair bay data collection and analysis Tools involved: Windows NT, Microsoft Visual Basic, Microsoft Excel, Microsoft Access Own-time OSS Contributions:
• shvim[16]
Implemented a Linux tty wrapper written in C for supporting Windows-like keyboard shortcuts in vim.
• IBus Simple Table[17]
Implemented an IBus input method which allows the insertion of arbitrary Unicode characters using TeX-like shortcuts via a C library. This facilitates typing in many languages at once.
• Pidgin on Maemo[18]
Ported the Pidgin Internet Messenger to the Maemo Internet Tablet platform, contributing several C language patches[19] back to Pidgin.
• “New Login” button on xscreensaver unlock dialog[20] written in C against Xlib. Pressing the button launches the gdm flexi Xserver. This enhancement was featured in Ubuntu and is still present in Fedora.
• Text-mode connection sharing wizard[21]
This enhancement was featured in Fedora.
• Run dialog[22]
Implemented a “Run Application” dialog in Wine[23], including a most-recently-used list.
• Fixed GNOME “Run Program…” dialog box icon jitter[24]
• Made numerous improvements to the TeXmacs LaTex export engine (in Scheme), e.g.: [25],
[26] and contributed to the rendering engine written in C++. Other
Attributes
• Thorough, self-motivated, conscientious, a quick learner, committed to the task
• Strong believer in Open Source[27], open standards, and open collaboration Languages
• Fluent: English, Hungarian, Finnish, German, Romanian
• Some knowledge: French, Polish, Serbian, Russian, Spanish, Italian