Summary
I’ve been a software developer for 15 years, fueled by a passion for computers I had since I was little.
I am well versed in picking up new technologies, either to contribute to an existing product/process or to
assess their suitability for a given task. I learned (and forgot) a lot of them during the years, and for most
part I retain their underlying principles.
I quickly troubleshoot issues with the software/infrastructure I deal with, even with little/no previous context
– either by technical means or by involving/escalating to the right people.
I employ theory, experience and pragmatism to deliver software within the constraints given. This is not
always easy, but each time I learn from my mistakes and I get a little better in understanding tradeoffs.
I'm aware I have still room for improvement -- for this reason I practice new skills, revise known ones, keep up to date with trends, and take inspiration from apparently unrelated fields like psycology and economy.
The roles I fit best are Software Engineer and Software Engineer in Test (or equivalent roles). I would be interested in working on operating systems, compilers, developer tools, platforms, real-time/embedded systems and videogames.
Work experience
01/2019 -- Ongoing: Swift Infrastructure Engineer, Apple, Cupertino (California, US)
Support and improvement of the quality of the Swift compiler (and the clang compiler to a lesser extent)
- Troubleshooting, maintainance and development of the build system used to generate Swift toolchains, both internally and in opensource -- CMake, Python, ninja, zsh/Bash
- Triage and qualification of new Swift compilers for inclusion in Xcode, and for building iOS/iPadOS/tvOS/watchOS and macOS
01/2014 -- 01/2019: iOS Build Engineer, Apple, Cork (Ireland)
Execution of daily software builds of iOS and its related products.
- Troubleshooting of build, integration and infrastructure issues
- Contribution of small fixes to the tooling used -- Perl, Shell
10/2009 -- 01/2014: Programmer, BEDIN Shop Systems srl, Cornuda -- TV (Italy)
Development, maintenance and support of software for Points of Sale (.NET 3.5/4.0/4.5):
- development and (automatic) deployment of smart clients -- Windows Forms, SQL Compact, SQLite, Lucene.NET, ClickOnce
- development, deployment and monitoring of web services handling thousands of users -- Windows Communication Foundation (WCF), Windows Azure, SQL Azure, Windows Azure Service Bus, ACS 2.0
- promotion engine; development of a library for video and photo capture from webcams (DirectShow); setup of a build server (Jenkins, MSBuild); development of a simple administration web site (ASP.NET MVC, Javascript, jQuery); migration of source code from Team Foundation Server to GitHub; basic programming of fiscal printers and EFT-POS; initial introduction of unit testing and automation practices; setup and customization of Thinktecture IdentityServer and AuthorizationServer
Summers from 2003 to 2008: Training -- apprentice programmer, BEDIN Shop Systems srl, Cornuda -- TV (Italy)
- Development and maintenance of software for Points of Sale management (.NET 2.0/3.5)
- Implementation of a visual editor for documents and labels made with GDI+, using a retained mode graphics system
- Investigation on WPF as an alternative to Windows Forms
Education and training
10/2007--09/2009: Laurea Specialistica (Master's Degree) in Computer Science, Università degli Studi di Padova, Padua (Italy), 110/110 cum laude
Online and approximate algorighms, concurrency, distributed systems, cryptography, semantics of programming languages, static analysis, data warehouse, business intelligence, multimedia, hypermedia, audio/video compression, bioinformatics, real-time systems, information retrieval, wireless networks, ITIL v2, abstract algebra, constraint programming, machine learning
Programming, algorithms, software engineering, relational databases, SQL , XML, probability, statistics, logic, operational research, programming languages, linear algebra, mathematical analisys, computer architectures, operating systems, networks, automata, numerical analysis, artificial intelligence, discreet mathematics, security
Computer science (programming, operating systems, DBMS, boolean logic), mathematics (analysis, integral, derivatives), electronics (transistors, operational amplifiers, logical ports), statistics (probability, stochastics variables)
Skills
Methodologies and concepts
Object oriented paradigm, functional paradigm, design, profiling, distributed systems, compensation, bug tracking, single responsibility principle, unit testing, separation of concerns, test automation, build automation, backward compatibility and versioning, legacy code, refactoring, troubleshooting, timely escalation of issues, debugging, code reading, Getting Things Done, mentoring, rudimentary time management
Technologies
These are in addition to the ones practiced in my work experience
vim, XML, regular expressions, Git, Make, rake, HTML 5, CSS, Javascript, Jekyll, Bootstrap, Linux (Ubuntu, Fedora, Debian), Touch typist (Self-taught, QWERTY, mostly italian layout, about 47 words-per-minute), LaTeX, Markdown, Textile, Powershell, Unity
Languages
- Italian
- Mother tougue
- English
- Fluent, Able to handle written and spoken technical conversations
According to the Common European Framework of Reference (CEF) level
- Understanding
- Listening: C2
- Reading: C2
- Speaking
- Spoken interaction: A2 -- Basic User
- Spoken prodution: A2 -- Basic User
- Writing: B1 -- Independent user
In real life:
- I can read easily technical and narrative articles/books;
- I can watch films, tv series and YouTube shows (most of the times without the help of subtitles)
- I can handle technical conversation -- I'm able to interact to technical support to explain the issues I'm having and I can understand what it is told to me.
Favorite sites
Bookshelf
University Theses
- Title
- Challenges in the Integration of domain-specific and scientific bodies of knowledge in Model-Driven Engineering
- Supervisor
- Prof. Tullio Vardanega
- Outside examiner
- Prof. Gilberto Filè
- Description
- Technological investigation about problems and tools needed to introduce Model-Driven Engineering in the construction of software, in particular in the real-time field. The investigation was conducted within Eclipse (EMF, GMF, Papyrus).
- Translated Title
- A high-available service oriented architecture
- Original Italian Title
- Un’architettura orientata ai servizi che offra alta disponibilità
- Supervisor
- Prof. Gilberto Filè
- Outside examiner
- Prof. Massimo Marchiori
- Industry supervisor
- Davide Bedin
- Description
- At BEDIN Shop Systems srl (Cornuda -- TV, Italy) development of a prototypal application for log transmission according to SOA principles using Windows Communication Foundation (WCF) and Amazon Simple Queue Service (SQS). For the development I used unit testing, integration testing and coverage report
Curriculum Vitae by
Eric Miotto is licensed under a
Creative Commons Attribution 3.0 Unported License.