Martín Ferrari

Systems administrator & programmer

4 Hanbury mews, Hanbury lane
Dublin 8, Ireland
(+353) 87 372 4209

tincho@tincho.org
PGP/GPG key: AAA22456
E127 8E7A 3A87 C7B6 22BF AA62 578B D370 AAA2 2456

March, 2014

Professional expertise

Systems administration

UNIX

  • UNIX systems specialist. Many years experience with GNU/Linux and Solaris. Profound knowledge about architecture, standards and best-practises.
  • High-availability and high-performance systems: virtual services, load-balancing, redundant systems, application clusters, kernel fine-tuning.
  • Proactive monitoring of systems, early detection of failures and bottlenecks, post-mortem analysis: nagios, internal monitoring tools at Google.
  • Information services: DNS, LDAP & NIS. Replicas, distributed architectures.
  • Web servers and application servers: apache, tomcat.
  • Mail servers: postfix, exim, cyrus, courier, dovecot.
  • Database engines: MySQL, Postgres, Oracle, SQLite.
  • Non-relational databases and caches: BDB, BigTable, memcached, redis.
  • Software versioning systems: git, mercurial, subversion, darcs, CVS.
  • Application packaging for Debian (deb) and RedHat (rpm).

Windows

  • Expertise to perform complex tasks in Microsoft systems: low-level problems, registry tweak-ing, migration and recovery of SQL server databases.

Network administration

  • Practical and theoretical knowledge of open standards, networking protocols: IP, TCP, UDP, and application protocols over IP.
  • Complex network administration: firewalling, VPNs, NAT, protected networks isolation, LAN bridging, advanced routing (multiple internal networks, multiple ISPs), traffic control and quality of service (QoS).
  • Knowledge of telecommunications technology, WAN links, WiFi networks.
  • Basic knowledge of ATM & X.25. Basic knowledge of Cisco (IOS) administration.

Programming

Languages

  • C, C++, Java, Perl, Python, Prolog, Haskell, Scheme, SQL, shell scripting. Assembly: real and protected mode IA-32, Itanium, microcontrollers.

Web programming

  • mod perl, Django, Servlets and JSP, PHP, CGI, HTML 5 and CSS, JavaScript.

Advanced topics

  • Kernel programming. BSD sockets, IPv6, low-level I/O, non-blocking I/O, signal handling, concurrency and multi-threading, distributed processing.

Image processing

  • Convolution filters: border detection (Canny, Sobel, gradient), Gaussian blur. Shape detection: Hausdorff metric, Hough transform. Image processing using partial differential equations (PDEs).

Network, systems and application security

Minimising risk

  • Network protection with iptables/netfilter.
  • Systems isolation: chroot jails, User Mode Linux, Linux Containers (LxC), virtualised systems.
  • Early vulnerability detection during design and implementation.
  • Working knowledge of different exploit techniques.

Recovery

  • Forensics analysis: damage, back-doors, root-kits, gathering of attacker’s information.

Cryptography

  • Public-key systems, theoretical knowledge of cryptography algorithms, cryptanalysis.

Work experience

2013 - 2014

  • Tincho.org. Independent consultant.
    Working on projects for companies around the world, delivering creative solutions for complex problems. Specialised in systems administration/DevOps and systems programming.

2011 - 2013

  • Google Ireland. Site reliability engineer (SRE).
    As part of the global team responsible for keeping the company services up and running, worked on a small team that specialises in supporting datacentre automation: repairs work-flows, parts replacement, and automated installations.
    Designing and implementing tools to automate and verify configuration changes applied globally.
    Revamping the monitoring system that tracks every beat of machines deployed in clusters around the globe. Learning to deal with planetary-scale networks, planned and unplanned failures, loosely-connected distributed systems, and generally changing my worldview on systems administration.

2010

  • INRIA Sophia Antipolis (France). Internship: “NEPI: an experiment plane for experimentation testbeds”.
    Continuing the work started in the previous year, designing and implementing a network test-bed using Linux Containers (LxC).

2009

  • INRIA Sophia Antipolis (France). Internship: “NEPI: an experiment plane for experimentation testbeds”.
    Designing and implementing an API to access different network simulators in an uniform way from user tools.

2000 - 2009

  • Solar Servicios On-Line / Decidir / Dos Monos S.A. UNIX System administrator, network administrator and programmer.
    Managing 40+ hosts running GNU/Linux and Solaris, an internal network comprising three branches in Argentina and Brazil, four data centres and five Internet providers.
    Internal consulting in: security, protocols, standards, programming, UNIX applications integration.
    Developing applications for company products and automation. Creating complex products with high value, including a high performance mail transfer agent (MTA).
    Setting-up and fine-tuning of a cluster of high-volume mail servers.
    Second level Microsoft systems support: NT, 2000, SQL server, Exchange.
    Internal teaching on UNIX, Perl, and networking.

1997 - 2000

  • Universidad Nacional de General Sarmiento. Network administrator.
    Managing 8 GNU/Linux and Solaris hosts, 2 Novell 4.1 hosts, 200+ workstations and one students’ lab with 36 workstations.
    Internal consulting in hardware and communication equipment acquisition.

Formal studies

2009 - 2010

  • Master of Science. Ubiquitous Networking and Computing (UBINET).
    University of Nice Sophia Antipolis. Full-time student with a scholarship given by INRIA.

1996 - 1998,
2006 - 2008

  • Licentiate (completed 4 out of a 6 years degree). Computer Science licentiate student.
    Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales.

Publications

2009

  • NEPI: Using independent simulators, emulators, and testbeds for easy experimentation.
    Mathieu Lacage, Martin Ferrari, Mads Hansen, and Thierry Turletti.
    ROADS’09: 4th workshop on real overlays and distributed systems.

Courses

2008

  • Programación de sistemas operativos.
    Semester-long hands-on intensive course on operating systems programming, in which a small operating system is written from scratch by the students.
    Universidad de Buenos Aires.

2006

  • Escuela de Ciencias Informáticas ’06, T1 course: Image processing with Partial Differential Equations. Intensive 15-hour course.
  • Escuela de Ciencias Informáticas ’06, N2 course: Introduction to distributed algorithms. Intensive 15-hour course. Universidad de Buenos Aires.

1998

  • Cryptology, semester-long course. Universidad de Buenos Aires.

1997

  • Solaris introductory course, taught by SUN Argentina in partnership with Red de Interconexión Universitaria (RIU). Universidad Nacional de Córdoba.

Languages

  • Spanish: Native speaker.
  • English: Fluent in technical and everyday use.
  • French: Intermediate level, fluent conversational level, experience living in France for 18 months.
  • Japanese: Achieved fourth level (san-juu). The Japan Foundation & Japan Educational Exchanges and Services.

Aptitudes & skills

  • Self-management ability.
  • Self-made education.
  • Constantly learning and updating knowledge.
  • Aptitude for rapid learning of new technologies.
  • Always looking for doing the best possible job.
  • Knowledge and careful following of established standards and best-practises: RFCs, FHS, Debian policy, etc.

Debian

  • Involved since 2001, maintaining packages since 2004, became official Debian Maintainer in 2007.
  • Accepted as official Debian Developer in 2008.
  • Co-editing the Debian Package of the Day website between 2007 and 2009.
  • Main co-organiser of DebConf 8, held in Argentina during August, 2008. Member of the international team that coordinates every year’s conference.

Other interests

  • Document composition with LATEX.
  • Basic knowledge of telephony, electricity and electronics.
  • Music aficionado, owner of a big music collection.
  • Resolving mathematics and programming problems for fun.
  • Contributing with the Open Street Map project as an amateur cartographer.

Honours

1992

  • First Gral. Sarmiento Mathematics Olympiad. Second place.

1993 - 1994

  • Argentine Informatics Olympiad. First place in the first round. 1994.

1994 - 1995

  • Argentine Mathematics Olympiad. All stages approved.

1994 - 1995

  • Buenos Aires Mathematics Olympiad. Honourific mention, 1994. Fourth place, 1995.

1995

  • National team selection for the International Mathematics Olympiad. 12th place.

1997

  • 12th E. Paenza mathematics competition for university students. Third place, teaming with Juan Pablo Vicedo.