1 == Bernie Innocenti -- Résumé ==
3 '''Linux Systems Engineer, Firmware Engineer''' \\
4 E-mail: **bernie**@**codewiz**.**org** \\
5 [[https://github.com/codewiz | GitHub]] | [[https://www.linkedin.com/in/codewiz | LinkedIn]] | [[https://plus.google.com/+BernieInnocenti | G+]] \\
6 Website: https://www.codewiz.org/ \\
8 === Career Objectives ===
10 Anything related to technology and consumer electronics is likely to attract me, **especially** if it's not already listed here.
11 I'm primarily interested in system programming, firmware, GPUs, scientific applications, machine learning, robotics, education technology, distributed systems and realtime applications.
15 * Software Engineer, [[http://www.google.com/ | Google]]
16 * Senior Systems Administrator, [[http://www.fsf.org/ | Free Software Foundation]]
17 * Co-founder, Board Member, [[http://wiki.sugarlabs.org/ | Sugar Labs Foundation]]
18 * Product/Release Manager, [[http://www.paraguayeduca.org/ | Paraguay Educa]]
19 * Operating System Engineer, [[OneLaptopPerChild | One Laptop Per Child]]
20 * Founder, Director of R&D at [[DevelerCompany | Develer s.r.l.]]
21 * Maintainer/Contributor of various [[FreeSoftware | Free Software]] projects, including [[http://gcc.gnu.org | GCC]] and [[http://www.kernel.org/ | Linux kernel]]
22 * Embedded Systems [[ConsultingWork | Design & Consulting]] for companies in the metropolitan area of Firenze, Italy
26 * **Programming languages**: C++, C, Rust, Java, Go, Assembly (x86, m68k/Coldfire, m68705, TMS320, Z80)
27 * **Dynamic/Scripting languages**: Python, JavaScript, Perl, PHP, Bourne Shell
28 * **Pseudo languages**: SQL, HTML, CSS, LaTeX, GNU make
29 * **Natural Languages**: Italian (native), English (excellent), Spanish (fluent), Japanese (beginner)
31 * **Operating systems**: Linux (Ubuntu, Red Hat, Fedora, Debian, Arch, SuSE, uClinux), MacOS X, Solaris 6 to 9,
32 NetBSD, AmigaOS, Windows
33 * **Development Tools**: GCC toolchain (contributor), LLVM, MSVC, XCode, Codewarrior, IAR, Code Composer Studio, BSO Tasking
34 * **Frameworks and APIs**: POSIX, Qt, Gtk, OpenGL, STL/Boost, WIN32, MFC, Protobufs, Google APIs
35 * **Programming Techniques**: OOP, template metaprogramming, multithreading, real-time and event-driven systems
36 * **Version Control**: Git, Subversion, Perforce, CVS, Clearcase, Source Safe
38 * **Sysadmin**: KVM, XEN, Docker, Puppet, systemd, Nagios, Munin
39 * **Server software**: BIND, Exim, Qmail, Postfix, Apache, MySQL, PostgreSQL, Mediawiki, Asterisk
40 * **Networking**: TCP/IP, HTTP(S), IPv6, DNSSEC, BGP routing
44 * Diploma in Mathematics, Computer Science and Electrical Engineering (Firenze, Italy)
45 * Undergraduate student of Software Engineering (Università degli Studi di Firenze)
46 * Undergraduate courses of Education Technology and Mathematics (Harvard Extension School)
47 * Non-formal studies in Computer Science including compilers, algorithms, operating systems, networking, databases
51 ==== Software Engineer, Google (Sep 2011 to present) ===
52 * Design and develop features for Google Search Infrastructure
53 * Design and develop features for the serving infrastructure of Accelerated Mobile Pages (AMPHTML)
55 ==== Senior Systems Administrator, Free Software Foundation (Oct 2010 -- Sep 2011) ====
56 * Develop and grow hosting infrastructure comprising approx. 100 virtual machines and 50 domains
57 * Provide project hosting and collaboration infrastructure for the GNU Project, Savannah and Trisquel Linux
59 ==== Co-founder, Sugar Labs (May 2008 to present) ===
60 * Coordinator of the Infrastructure Team
61 * Member of the Sugar Labs Oversight Board (2008 to 2011)
62 * Fundraising, partnerships and organization of events
64 ==== Product and Release Manager, Paraguay Educa (Jan 2010 -- Aug 2010) ====
65 * Coordinate engineering team to integrate new features in Sugar learning environment
66 * Develop OS upgrade for 4600 students of the deployment
67 * Organize computer programming extracurricular activities for local students
69 ==== Volunteer Developer at One Laptop Per Child (May 2007 -- Apr 2008) ====
70 * In-house maintainer of the X11 windowing system
71 * Input devices, keyboard layouts and i18n
72 * Miscellaneous OS development, packaging, release engineering
74 ==== CTO, Co-founder at Develer (Nov 2001 -- Apr 2007) ====
75 * Wrote firmware for embedded systems and DSPs (over a dozen different architectures)
76 * Developed portable, modular, open-source, multitasking RTOS for 8 and 16bit microcontrollers.
77 * Managed customers and sales for several years
78 * Created the project hosting and internet collaboration infrastructure
80 ==== Freelance software engineering consultant (2000 -- 2009) ====
81 * Firmware development for **SEAC R&D labs**
82 * POS drivers and system software for **Marconi Commerce Systems**
83 * Implemented compiler/interpreter of a specialized OO language for **Telecom Italia Labs**
84 * Air traffic control radio DSP firmware for **Selex Communications**
86 ==== Instructor for European Fund's engineering courses (2002 -- 2004 and 2006 -- 2007) ====
87 * D-Lab: Multimedia course of 600h for 20 students
88 * GFactory: Videogame development course of 450h for 15 students
89 * PAW (Web Application Programmer): 300h for 15 students
90 * Advanced C++, Embedded Linux and Software Analysis & Design for 40-50 employees of Gilbarco Veeder-Root (200h)
91 * Workshop on GIS Systems in Iannina, Greece (30h)
93 ==== Co-founder and CTO, Sirius (late 2000 -- mid 2001) ====
94 * Developed firmware and high-level software of cooling and telemetry system for laser surgery
95 * Created and managed network, IT and development infrastructure for the entire company
97 ==== Firmware engineer at SEAC R&D laboratories (June 1996 -- April 2000) ====
98 * Developed firmware for several devices, including photometers and blood cell analyzers
99 * Member of team developing software for large robotized clinical analyzers
100 * Create and maintain the network and development infrastructure of the R&D lab.
102 === Volunteer / Pro-Bono ===
103 * [[http://bertos.org/|BeRTOS]] Open Source Microkernel (2001-2007)
104 * [[http://fedoraproject.org/wiki/User:Bernie|Fedora developer]] (2007-2009)
105 * [[https://launchpad.net/~codewiz/+archive/ppa?field.series_filter=|Ubuntu packager]] 2008
106 * Xorg developer (2007-2008)
107 * GCC compiler maintainer (2003-2005)
108 * Linux kernel hacker (2002-2008)
109 * NetBSD developer (2000-2001)
110 * Co-maintainer of [[http://bdm.sourceforge.net|Background Debug Module]] driver for Freescale Coldfire processors (2003-2005)
111 * SysOp of [[SystemShockBBS]]