X-Git-Url: https://codewiz.org/gitweb?p=wiki.git;a=blobdiff_plain;f=AbridgedResume;h=6c8d51504ac824a5422969a692c1c2a6a59f8382;hp=6857d691b129be272d6ee3f053caf22d51c80bba;hb=7de1cc6a0e5d45e15bb2b48a2075b88cbc26e039;hpb=97e4d0a25843381e21abc10fd583cd60c4fb45d8 diff --git a/AbridgedResume b/AbridgedResume index 6857d69..6c8d515 100644 --- a/AbridgedResume +++ b/AbridgedResume @@ -1,110 +1,118 @@ -== Bernie Innocenti -- Résumé == +
{{ pictures/bernie/bernie-gradient-thumb.jpg | maxwidth=160 }}
-'''Linux Systems Engineer, Firmware Engineer''' \\ -E-mail: **bernie**@**codewiz**.**org** \\ -[[https://github.com/codewiz | GitHub]] | [[https://www.linkedin.com/in/codewiz | LinkedIn]] | [[https://plus.google.com/+BernieInnocenti | G+]] \\ -Website: https://www.codewiz.org/ \\ + +**Bernie Innocenti** \\ +Linux Systems Engineer, Firmware Engineer \\ + + +東京都区部 — Tokyo Metro, Japan \\ +email: **bernie**@**codewiz**.**org** \\ +[[https://gitlab.com/berniecodewiz | GitLab]] | [[https://github.com/codewiz | GitHub]] | [[https://www.linkedin.com/in/codewiz | LinkedIn]] \\ +Website: [[https://www.codewiz.org/ | www.codewiz.org]] \\ + +Latest version of this resume: [[https://www.codewiz.org/resume | www.codewiz.org/resume]] === Career Objectives === -My primary interests are in system programming, firmware, GPUs, sensors, machine learning, robotics, education technology, distributed systems and realtime applications. \\ -Anything related to science, technology and consumer electronics is likely to attract me, **especially** if it's not already listed below. +My primary interests are in system programming, compilers, firmware, sensors, robotics, machine learning, GPUs, education technology, distributed systems, low-latency networking, and real-time. +Anything related to science, technology and consumer electronics is likely to attract me, //especially// if it's not already listed here. === Summary === - * Software Engineer, [[https://www.google.com/ | Google]] + * Senior Software Engineer, [[https://www.google.com/ | Google]] * Senior Systems Administrator, [[https://www.fsf.org/ | Free Software Foundation]] * Co-founder, Board Member, [[https://www.sugarlabs.org/ | Sugar Labs Foundation]] - * Product/Release Manager, [[http://www.paraguayeduca.org/ | Paraguay Educa]] - * OS Developer (volunteer), [[OneLaptopPerChild | One Laptop Per Child]] - * CTO, Co-Founder at [[DevelerCompany | Develer]], software and embedded systems engineering firm - * Contributor of various Free Software projects, including [[https://gcc.gnu.org/ | GCC]] and the [[https://www.kernel.org/ | Linux kernel]] + * OS Developer, [[http://www.paraguayeduca.org/ | Paraguay Educa]], [[OneLaptopPerChild | One Laptop Per Child]] + * CTO & Co-Founder, [[https://www.develer.com/en/ | Develer]], software and embedded systems engineering firm + * Open-source contributor ([[https://gcc.gnu.org/ | GCC]], [[https://www.kernel.org/ | Linux kernel]] and various others) === Skills === - * **Programming languages**: C++, C, Rust, Java, Go, Assembly (x86, m68k/Coldfire, m68705, TMS320, Z80) - * **Dynamic/Scripting languages**: Python, JavaScript, Perl, PHP, Bourne Shell - * **Pseudo languages**: SQL, HTML, CSS, LaTeX, GNU make - * **Natural Languages**: Italian (native), English (excellent), Spanish (fluent), Japanese (beginner) + * **Programming languages**: Modern C++, Rust, Java, Go, C, asm (x86, m68k/Coldfire, m68705, TMS320, Z80, 6502) + * **Dynamic/Scripting languages**: Python, Java****Script, Bash, Perl, PHP + * **Pseudo languages**: HTML, CSS, SQL, LaTeX, GNU make + * **Natural Languages**: Italian (native), English (excellent), Spanish (fluent), Japanese (studying for JLPT N3) - * **Operating systems**: Linux (Ubuntu, Red Hat, Fedora, Debian, Arch, SuSE, uClinux), MacOS X, Solaris 6 to 9, - NetBSD, AmigaOS, Windows - * **Development Tools**: GCC toolchain (contributor), LLVM, MSVC, XCode, Codewarrior, IAR, Code Composer Studio, BSO Tasking - * **Frameworks and APIs**: POSIX, Qt, Gtk, OpenGL, STL/Boost, WIN32, MFC, Protobufs, Google APIs - * **Programming Techniques**: OOP, template metaprogramming, multithreading, real-time and event-driven systems - * **Version Control**: Git, Subversion, Perforce, CVS, Clearcase, Source Safe + * **Operating systems**: Linux (Arch, Red Hat, Fedora, Ubuntu, Debian, uClinux), Android, MacOS, Solaris, NetBSD, AmigaOS, Windows + * **Development Tools**: GCC (contributor), Clang, VSCode, XCode + * **Embedded Compilers**: Codewarrior, IAR, Code Composer Studio, BSO Tasking, SAS/C + * **Frameworks and APIs**: POSIX, Web****Assembly, Qt, OpenGL, Win32, Protobufs + * **Programming Styles**: OOP, functional programming, template metaprogramming, event-driven, real-time, multithreaded + * **Version Control**: Git (self-hosted, [[https://gitlab.com/berniecodewiz | GitLab]] and [[https://github.com/codewiz | GitHub]]), Perforce, Subversion - * **Sysadmin**: KVM, XEN, Docker, Puppet, systemd, Nagios, Munin - * **Server software**: BIND, Exim, Qmail, Postfix, Apache, MySQL, PostgreSQL, Mediawiki, Asterisk - * **Networking**: TCP/IP, HTTP(S), IPv6, DNSSEC, BGP routing + * **Network protocols**: QUIC, HTTP, IPv6, TCP, TLS, DNSSEC, BGP + * **Sysadmin**: KVM, Docker, Puppet, Google Cloud, systemd, Nagios, Munin + * **Server software**: Apache, Nginx, BIND, Postfix, Exim, MySQL, PostgreSQL, Mediawiki, Asterisk -=== Education === +=== Work Experience === - * 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) - * Non-formal studies in Computer Science including compilers, algorithms, operating systems, networking, databases - -=== Experience === +==== Senior Software Engineer, Google (Sep 2011 to present) === + * Android Core Networking: Lead developer of the [[https://source.android.com/devices/architecture/modular-system/dns-resolver | DNS resolver]], including monitoring and experiments system + * Google Search Infrastructure: Develop features for high-throughput, high-availability, distributed web serving for billions of files + * [[https://amp.dev/ | 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, mentoring for new employee and intern hosting -==== Software Engineer, Google (Sep 2011 to present) === - * Design and develop features for Google Search Infrastructure - * Design and develop features for the serving infrastructure of Accelerated Mobile Pages (AMPHTML) - -==== Senior Systems Administrator, Free Software Foundation (Oct 2010 -- Sep 2011) ==== - * Develop and grow hosting infrastructure comprising approx. 100 virtual machines and 50 domains - * Provide project hosting and collaboration infrastructure for the GNU Project, Savannah and Trisquel Linux +==== 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 to present) === - * Coordinator of the Infrastructure Team + * Lead of the [[https://wiki.sugarlabs.org/go/Infrastructure_Team/Resources | Infrastructure Team]] * Member of the Sugar Labs Oversight Board (2008 to 2011) * Fundraising, partnerships and organization of events -==== Product and Release Manager, Paraguay Educa (Jan 2010 -- Aug 2010) ==== - * Coordinate engineering team to integrate new features in Sugar learning environment - * Develop OS upgrade for 4600 students of the deployment - * Organize computer programming extracurricular activities for local students +==== OS Developer, Paraguay Educa (Jan 2010 ~ Aug 2010) ==== + * Coordinate engineering team to develop new features for [[https://sugarlabs.org/ | Sugar Learning Environment]] + * Release OS upgrade for 4600 machines deployed in rural schools + * Organize computer programming and "hacking" courses for students -==== Volunteer Developer at One Laptop Per Child (May 2007 -- Apr 2008) ==== - * In-house maintainer of the X11 windowing system - * Input devices, keyboard layouts and i18n - * Miscellaneous OS development, packaging, release engineering +==== Volunteer Developer 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 2001 -- Apr 2007) ==== +==== CTO, Co-founder at Develer (Nov 2002 ~ Apr 2007) ==== + * Designer of [[http://bertos.org/|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) - * Developed portable, modular, open-source, multitasking RTOS for 8 and 16bit microcontrollers. - * Managed customers and sales for several years - * Created the project hosting and internet collaboration infrastructure - -==== Freelance software engineering consultant (2000 -- 2009) ==== - * Firmware development for **SEAC R&D labs** - * POS drivers and system software for **Marconi Commerce Systems** - * Implemented compiler/interpreter of a specialized OO language for **Telecom Italia Labs** - * Air traffic control radio DSP firmware for **Selex Communications** - -==== Instructor for European Fund's engineering courses (2002 -- 2004 and 2006 -- 2007) ==== - * D-Lab: Multimedia course of 600h for 20 students - * GFactory: Videogame development course of 450h for 15 students - * PAW (Web Application Programmer): 300h for 15 students - * Advanced C++, Embedded Linux and Software Analysis & Design for 40-50 employees of Gilbarco Veeder-Root (200h) - * Workshop on GIS Systems in Iannina, Greece (30h) - -==== Co-founder and CTO, Sirius (late 2000 -- mid 2001) ==== - * Developed firmware and high-level software of cooling and telemetry system for laser surgery - * Created and managed network, IT and development infrastructure for the entire company - -==== Firmware engineer at SEAC R&D laboratories (June 1996 -- April 2000) ==== - * Developed firmware for several devices, including photometers and blood cell analyzers - * Member of team developing software for large robotized clinical analyzers - * Create and maintain the network and development infrastructure of the R&D lab. - -=== Volunteer / Pro-Bono === - * [[http://bertos.org/|BeRTOS]] Open Source Microkernel (2001-2007) - * [[http://fedoraproject.org/wiki/User:Bernie|Fedora developer]] (2007-2009) - * [[https://launchpad.net/~codewiz/+archive/ppa?field.series_filter=|Ubuntu packager]] 2008 - * Xorg developer (2007-2008) - * GCC compiler maintainer (2003-2005) - * Linux kernel hacker (2002-2008) - * NetBSD developer (2000-2001) - * Co-maintainer of [[http://bdm.sourceforge.net|Background Debug Module]] driver for Freescale Coldfire processors (2003-2005) - * SysOp of [[SystemShockBBS]] + * Created project hosting and remote collaboration infrastructure + * Business development and customer relationships in multiple industries + +==== 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 ==== + * [[https://en.wikipedia.org/wiki/DLab | DLab]]: Multimedia programmer course (600h for 20 participants). My students designed a [[https://sourceforge.net/projects/dlab/files/Starshocks/0.5%20beta/ | 2D game engine]] from scratch + * [[https://sourceforge.net/projects/gfactory/ | 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 Internet presence and collaboration infrastructure + +==== 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 === + * [[https://gitlab.com/berniecodewiz/mandelwow | Mandelwow]], a 3D fractal demo written in Rust and OpenGL + * [[https://www.codewiz.org/wiki/CorebootX230 | Coreboot hacking]] on Thinkpad laptops + * [[GeekiGeeki]], a wiki engine backed by Git, powering this website + * [[http://fedoraproject.org/wiki/User:Bernie | Fedora developer]] + * [[https://launchpad.net/~codewiz/+archive/ppa | Ubuntu packager]] + * GCC maintainer (mostly m68k backend) + * Minor contributions to the Linux kernel + * Co-maintainer of [[http://bdm.sourceforge.net | Background Debug Module]] driver for Freescale Coldfire series + * [[https://www.netbsd.org/ | NetBSD]] developer + * Sysop of [[SystemShockBBS]], a FidoNET technology BBS