Gilles Darold

PostgreSQL DBA Senior / PostgreSQL Expert

Grenoble, France

66 chemin du curtil

38690 Bevenais - France
gilles@darold.net

http://www.darold.net/

Summary

I am a PostgreSQL Database Administrator and Developer. I've been working in the world of PostgreSQL and Linux for over 20 years and have worked on many different projects covering PostgreSQL administration, performance tuning, advanced backup and recovery, replication, and high Availability. I have also 20 years of experiences in different areas related to System and Network.

I use PostgreSQL since 1995, since this time I've created some well known tools around PostgreSQL like pgBadger for log analysis, Ora2Pg to migrate Oracle database and more recently pgCluu or pgFormatter. I've also contributed to PostgreSQL, pgPool-II and OpenLDAP code to name a few.

Areas of expertise

  • PostgreSQL audit and recommendations.
  • System, PostgreSQL and SQL tuning and optimizations.
  • PostgreSQL replication technologies, Streaming Replication, Logical Replication, Slony, log shipping.
  • PostgreSQL backup/restore logical and PITR. Installation/configuration of backup tools (barman, pgBackRest, etc.)
  • Table partitioning and other PostgreSQL advanced features.
  • Oracle, SQL Server, MySQL to PostgreSQL migration.
  • Deliver PostgreSQL courses for all level (beginner, developer and advanced).
  • On call and ticketing for various PostgreSQL 24/7 assistance.
  • Maintain and develop complex programming/scripts.
  • Fix and report bugs on PostgreSQL.
  • Develop PostgreSQL new features and extensions.
  • Able to travel up to 50%.
  • Can work with customers directly.
  • Advanced system administration and performance skills for Linux, (Ubuntu, Centos, Redhat, or Debian), including scripting languages like Bash, Ksh, Python, Perl etc..
  • Working knowledge of MS Windows.

Teaching and speaking engagements

  • December 2016 - current: Teacher of Perl Programming at Bachelor MI-ASSR Grenoble University - IUT2
  • November 2018 - PgSessions #10 Paris: New features in PostgreSQL v11.0
  • May 2018 - PGCon Ottawa: lightning talk about the pgtt extension, in English.
  • October 2017 - PostgreSQL Graphic Tools Developer Meeting in Warsaw: Talk about interfacing with pgBadger and pgFormatter.
  • June 2017 - PGDAY France, Toulouse: Talk about PostgreSQL partitioning and autonomous transaction, in French.
  • September 2015 - PostgreSQL Session #7 Paris: Talk about How to leave Oracle, in French.
  • Febuary 2015 - PostgreSQL Conference Russia, Moscow: Talk about Oracle migration difficulties, in English.
  • September 2014 - PostgreSQL Session #6 Paris: Talk about Oracle Spatial migration, in French.
  • June 2013 - PGDay France, Nantes: Talk about migration performances, in French.
  • May 2012 - PGCon Ottawa: lightning talk about pgBadger, in French.
  • October 2011 - PgConf.Eu Amsterdam: Migration Oracle to PostgreSQL best practices, in French.

Technical proficiencies

  • Platforms: UNIX (AIX, HP-UX, Solaris), Linux (RedHat, Slackware, Debian, Ubuntu, BSD…), Windows
  • Networking: TCP/IP, ISO/OSI, Ethernet, FDDI, VPN, SSH, PGP, WAN, WLAN (wifi), various protocols including SMTP, IMAP, and HTTP.
  • Databases: PostgreSQL, Oracle, MySQL, SQLite, BDB
  • Languages: Shell, HTML, Java, JavaScript, jquery, Perl, C, C++, GTK, TCL/TK, Java, Python, SQL, PL/SQL and PLPGSQL

Work Experience

PostgreSQL DBA Senior Consultant

Dalibo, Paris

Oct 2010Current

  • Evaluation of customer deployments of PostgreSQL and recommendations on how to improve them.
  • Work to develop Services proposals to achieve customer needs.
  • Guide customers in the development of custom PostgreSQL-based applications.
  • Deliver PostgreSQL courses on site for all level (beginner, developer and advanced).
  • Database migrations from Oracle, SQL Server, MySQL to PostgreSQL
  • Develop architectures to migrate data and entire databases
  • Performance tuning and recommendations to existing database deployments
  • Tuning of SQL statements, optimize stored procedures, analyze query plans, write advanced PLpgSQL
  • Implement replication, High Availability and disaster recovery solutions with Postgres
  • Implement solutions for backup/restore, management/monitoring and perform upgrades and patching.
  • Help scope and develop technical proposals to achieve customer needs.
  • Create, implement and document a suite of PostgreSQL architectures.
  • Publish blogs, white papers and conference contributions.
  • Writes complex programming/scripts.
  • Guide customers on capacity planning.
  • Postgres database management tools and database tuning.
  • PostgreSQL replication technologies Binary Streaming Replication, Logical Replication, Slony.
  • PostgreSQL networking, HBA and connection pooling (PgBouncer, PgPool).

System and Network Manager

Groupe SAMSE, Grenoble

Feb 2000Sep 2010

  • Projects management: architectures design and technical solutions, installation, packaging, documentation, specific development and reporting.
  • System Administration: 200 Unix server (Linux, AIX and SCO) for the network infrastructure, database, ERP, Intranet, RedHat cluster, SAN (EMC Clarion), automated backup library (Overland), virtualization (ESX vmWare).
  • Network Administration: VPN Orange MPLS for 220 agencies, VLAN, STP, High Availability, Wireless AP management. DHCP, DNS, Sendmail, Cyrus Imap, OpenLDAP, Squid…
  • Monitoring and alerting with Nagios, SNMP monitoring, development of specifics monitoring tools.
  • World Wide Administration: DMZ (ftp, www, dns, mailhost), Firewal Checkpoint, domain name registration, vpn site to site and client to site for external service provider, server security (chroot user, chroot Apache+php+perl, ftp).
  • Open Source Integration manager: WWW, DHCP, DNS, messagerie (Webmail, Sendmail, Cyrus Imap), OpenLDAP, light clients with VNC servers, Intranet portal, Internet Squid proxy, courses to other administrators and support. This work have been presented at Linux Solution Paris 2003, http://www.darold.net/projects/LinuxSol2003/

Developer / SysAdmin

Free Lance, Grenoble

Jun 1996Jan 2000

  • TeamLog: Perl Programming course.
  • Xsalto: Design and development of an E-Business Suite for Linux. Environment: CGI-Perl (mod_perl), PostgreSQL, Apache, XML/XSLT.
  • Hewlet-Packard : Technical process. Analyze of Knowledge database to extract relevent information. Environment: Perl on HPUX.
  • LVO International: Design and development of an E-Business web site. Environment: CGI-Perl (mod_perl), PostgreSQL, Apache, XML/XSLT.
  • Sirial: On site installation and configuration of an embedded firewall (NextLand ISB100) for company SIRIAL.
  • Hewlet-Packard : development of a high speed network scanner for security auditing. Port mapper and scanner for network service (http, smtp, telnet, ftp, pop3, etc.) on large network (+2000 machines). Perl program with HTML reports.
  • Group SAMSE: Design of a network architecture (DMZ), installation and configuration of a firewall, proxy cache, serveur WWW. Environment: System Linux, IP Masquerading, Ipfwm, Proxy Squid, serveur Apache.

Developer

Monit'Air (Heli-Union), Grenoble

May 1995 - May 1996

  • Complete development of an application allowing to configure, export data and report fly statistics from a fly recorder for copter. Update to follow specifications of the Civil Security and national Police. Environment: Visual Basic sur NT4.0/Windows95 using Access95 RDBMS.
  • Installation and configuration of NT 4.0 servers. Protocoles NetBUI et TCP/IP with PC under Win95.

Developer

Astronomical Laboratory Calern, Nice

Nov 1994 - Jan 1995

  • Write of a French HowTo Linux to install and configure RDBMS Postgres95 (PostgreSQL).
  • Development of a network service to register demands of professional astronomers to take astronomical shots. Environment: CGI/C interface between a HTTP server and a relational database (Postgres95), GUI to manage users and shots developped in C, Motif and XWindow. Works on HP9000/710 (HPUnix) with Linux port.

Education

University degree Software and Industrial Programmer.

Grenoble, 1995

University degree Human Sciences

Grenoble, 1987

French high-school diploma

Grenoble, 1986

 (Baccalaureat Scientifique)