Bernie Innocenti
Linux and Firmware Engineer
Boston, Tokyo
Email: bernie@codewiz.org
Website: codewiz.org
GitLab | GitHub | LinkedIn
Latest version of this page: codewiz.org/resume
Objectives ¶
System design, real-time systems, sensors, robotics, compilers, parallel computing, graphics acceleration, machine learning,
low-latency networking, distributed systems.
Work related to science, technology, electronics and aerospace is likely to interest me, especially if it's not already listed below.
Summary ¶
- Senior Firmware Engineer, Starship Avionics & Sensor Development, SpaceX
- Senior Software Engineer, Android Networking, Google Japan
- Senior Software Engineer, Search Infrastructure, Google Cambridge
- Co-founder, Sugar Labs Foundation (edutech non-profit)
- OS Developer, Paraguay Educa, One Laptop Per Child
- CTO & Co-Founder, Develer (Linux / embedded engineering firm)
- Open-source contributor (GCC, Linux kernel and various others)
Skills ¶
- Programming: C++23, Rust, C, Java, Python, Go, JavaScript, TypeScript, PHP
- Scripting: Bash, Perl, Lua
- Assembly: ARM, x86, m68k, 6502, PowerPC, Z80
- Microcontrollers: NXP i.MX RT (ARMv7), Coldfire, M68705, TMS320 DSP
- Other Languages: HTML + CSS, GLSL, SQL, LaTeX
- Natural Languages: Italian (native), English (excellent), Spanish (fluent), Japanese (JLPT N3-N4)
- Operating Systems: Linux (Red Hat, Fedora, Arch, Ubuntu, Debian, uClinux), Android, macOS, NetBSD, Solaris, AmigaOS, Windows
- Development Tools: GCC (contributor), Clang, Visual Studio Code, GNU make, ninja, bazel
- Execution domains: realtime, event-driven, async/await, multithreading, client/server, GPU offload
- Frameworks and APIs: POSIX, WebAssembly, Qt, OpenGL, Win32, Protobufs
- Version Control: Git (self-hosted, GitLab and GitHub), Perforce, Subversion
- Network Protocols: HTTP, QUIC, TLS, IPv6, TCP, UDP, DNS, DNSSEC, DHCP, TFTP, BGP
- Sysadmin: KVM, Docker, Puppet, Google Cloud, systemd, Nagios, Grafana
Work Experience ¶
Senior Firmware Engineer, SpaceX (Sep 2021 ~ Apr 2024) ¶
- Sensor Development: Design control firmware for navigation and fuel control
- Starship Avionics: Co-maintainer of C++ firmware framework
- Test engineering: Build Linux-based CI pipelines and testbeds for firmware projects
Senior Software Engineer, Google (Sep 2011 ~ Sep 2021) ¶
- Android Core Networking: Lead developer of the DNS resolver, including monitoring and experiments system
- Google Search Infrastructure: Develop features for high-throughput, high-availability, distributed web serving for billions of files
- Accelerated Mobile Pages: Tech lead of global CDN for news sites integrated with Google Search
- Instructor of advanced C++ and Linux programming courses for Tokyo and Taipei offices
- Conduct system design interviews, mentor new employees and host interns
Senior Systems Administrator, Free Software Foundation (Oct 2010 ~ Sep 2011) ¶
- Develop and consolidate infrastructure comprising approx. 100 virtual machines and 50 domains
- Maintain project hosting and collaboration services for the GNU Project
Co-founder, Sugar Labs (May 2008 ~ present) ¶
- Lead of the Infrastructure Team
- Member of the Sugar Labs Oversight Board (2008 ~ 2011)
- Fundraising, partnerships and organization of events
OS Developer, Paraguay Educa (Jan 2010 ~ Aug 2010) ¶
- Coordinate engineering team to develop new features for Sugar Learning Environment
- Build, test and release OS updates for 4600 laptops deployed in rural schools
- Organize computer programming and "hacking" workshops for students
Volunteer at One Laptop Per Child (May 2007 ~ Apr 2008) ¶
- In-house maintainer of the X11 windowing system and graphics drivers
- Input drivers, keyboard layouts and i18n
- Platform development, packaging, release engineering
CTO, Co-founder at Develer (Nov 2002 ~ Apr 2007) ¶
- Designer of BeRTOS, a modular, open-source RTOS for 8bit and 16bit microcontrollers.
- Built team of highly skilled Linux and firmware engineers
- Wrote firmware for embedded systems and DSPs (over a dozen different architectures)
- Created project hosting and remote collaboration infrastructure
- Business development and customer relationships
Freelance (2000 ~ 2009) ¶
- Telecom Italia Labs: Design and implement compiler & interpreter of an object-oriented configuration language for a network simulator
- Selex Communications: Design and develop DSP modem firmware for Air Traffic Control radios
- Gilbarco Veeder-Root: Internal training of 200h for 45 engineer on Embedded Linux, OOP and C++
Instructor for European Fund's engineering courses ¶
- DLab: Multimedia programmer course (600h for 20 participants). My students designed a 2D game engine from scratch
- GFactory: Videogame development course of 450h for selected 15 participants
- PAW (Web Application Programmer): 300h for 15 participants
- Workshop on GIS Systems in Iannina, Greece (30h for 15 participants)
Co-founder and CTO, Sirius SRL ¶
- Firmware and power control for laser hair removal
- Created company's IT infrastructure and Internet presence
Firmware engineer, SEAC R&D laboratories ¶
- Control software for clinical analyzer robot with 18 stepper motors
- Software, firmware and driver development for laboratory instruments: photometers, incubators, hematology
Education ¶
- Diploma in Mathematics, Computer Science and Electrical Engineering (Firenze, Italy)
- Undergraduate student of Software Engineering (Università degli Studi di Firenze)
- Undergraduate courses of Education Technology and Mathematics (Harvard Extension School)
- Personal research in compilers, algorithms, operating systems, network protocols, 3D graphics
Personal Projects / Volunteer Activity ¶