Ben Roberts

 
Ben Roberts
Sr. Systems Administrator
Top Skills
Puppet

Large scale puppet infrastructure deployment and administration, module development, testing and continuous integration.

Linux Administration

15+ years experience running Linux systems including Gentoo/Sabayon and RHEL.

Python

Experience writing large and small python applications

Django

Principal author of multiple large (internal) django applications

Networking

A Linux systems administrator based in the South East of England, with a focus on automation.

Employment
GSA Capital Services Ltd
Sr. Systems AdministratorNovember 2012 – Present
  • Managing Unix, Linux and Windows systems, networking and datacentre deployment
  • Automation and monitoring
  • Containerisation and scheduling
  • Maintaining and operating backup systems (on the order of 100s TB/year)
  • IT Support (first/second/third line)
  • On-call rotation
Atos IT Services UK
Network Technical SpecialistJuly 2010 – November 2012
  • Design and implementation of network solutions for Atos customers in the Transport and Financial Services industries.
  • Lead planner for all physical aspects of 5-datacentre core infrastructure upgrade including WAN circuit delivery, rack and equipment placement, power & network connectivity, build validation, and logistics management for ~3000 items of hardware.
  • Designed, built and operated a large development lab for validation of a large-scale internal project, containing:
  • ~70 mixed-vendor devices across 8 fully populated, full-sized racks
  • 500 copper & fibre connections
  • >2.5km of network cabling
  • Installation, configuration and maintenance of an out of band management service for remote console access to hundreds of core infrastructure devices across multiple datacentres and unmanned sites.
  • On-call proximity support, providing out-of-hours coverage for any incidents requiring a hands-on activity at the local data centre.
Netcraft
Internet Services DeveloperJune 2008 – May 2009
  • Penetration testing of web applications and hardware devices for large financial institutions.
  • Development of a perl/sql based data mining survey.
  • Take-downs of phishing sites (via legal channels), and other anti-phishing related activities.
  • Windows Server/Active Directory/Exchange administration (including migrations to newer hardware/operating system versions).
NXP Semiconductors
Student InternJune 2007 – September 2007
  • Maintained and extended an existing internal web application using PHP and Perl.
  • Installion and configuration of a streaming video-on-demand server on Red Hat Linux, with embedded Linux clients running on set-top boxes.
School of Electronics and Computer Science, University of Southampton
Helpdesk AssistantSeptember 2006 – June 2010
  • Working in the University’s Computer Science Helpdesk on an ad-hoc basis, performing day-to-day tasks to help the full-time System Administrators. This included repairing and reinstalling the operating systems on lab PCs.
Certification
Certification Vendor Date
CCNA Cisco Feb 2010 – Feb 2013
Education
University of Southampton
DegreeOctober 2005 – June 2010
Subject Level Grade
Computer Sciencewith Distributed Systems and Networking" MEng First Class
Uckfield Community Technology College
A LevelsSeptember 2003 – June 2005
Subject Level Grade
Mathematics A-Level A
Physics A-Level A
Computing A-Level A
Further Mathematics AS-Level B
Skills
Systems Administration

Experience with:

  • Installation, configuration and operation of Operating Systems (Linux, Windows)
  • Writing and maintaining Linux software packages and package repositories (Gentoo Portage, Sabayon Entropy, RPM)
  • System automation
  • Puppet (including type and provider development)
  • MCollective/Choria (including plugin development)
  • Unattended installation (Kickstart)
  • Virtualisation (KVM, libvirt, VMWare/ESX)
  • Monitoring (Nagios, xymon)
  • Backup systems (Bacula)
  • Messaging (RabbitMQ)
  • Storage (ZFS, NetApp, Fujitsu Eternus disk and tape)
  • Hashicorp Stack (consul, vault, nomad, terraform, packer, including enterprise versions)
  • AWS

Brief experience with Active Directory, Group Policy and Exchange administration on Windows-based systems and integration with Linux systems via LDAP.

Networking

Experience with:

  • Routing and Switching (Cisco IOS/Nexus, Arista, Brocade, Mikrotik)
  • Firewalling (Cisco ASA, Linux iptables)
  • VPNs (Juniper, OpenVPN, Mikrotik)
  • Dynamic Routing (OSPF, BGP) and IPv4 Multicast

Experience configuring and operating network services, including:

  • DHCP (ISC)
  • Resilient DNS (BIND)
  • Resilient LDAP (OpenLDAP, Active Directory)
  • HTTP (Apache, IIS)
  • SSL CA (OpenSSL)
  • Logging (Syslog, Splunk)
  • RSA Authentication Manager
Web Programming

Proficient at creating standards-compliant, cross-browser (X)HTML documents, with CSS styling, and dynamic JavaScript behaviour. Many years’ experience creating both simple and complex dynamic systems using PHP. Emphasis on writing secure code. More recently, experience with Python and Django.

Application Programming

A polyglot; I can read and write most languages to a basic degree. The ones I use regularly change based on current requirements. Presently I find myself working mostly with Python, Ruby and Bash shell scripting. I have previous experience with PERL and C/C++ with Qt

Databases

Experienced with SQL, including database normalisation. Installation and operation of MySQL DBMS, basic operation of MSSQL.

Development Tools

Experience with:

  • IDEs (PyCharm, KDevelop, Eclipse SDK, Microsoft Visual Studio)
  • UNIX build environments (Vim, gcc/g++, make)
  • Testing frameworks (Rspec, python unittest)
  • Version Control systems (Git, GitHub, GitLab, BitBucket Server, Subversion)
  • Continuous Integration/Delivery (Jenkins, Gitlab-CI, Travis)
Data Centre Management

Experience with:

  • Data centre architecture
  • Physical equipment installation and maintenance
  • Brownfield project migrations
Interests

I am a supporter of the opensource movement, and try to use free/libre software and code where I can. I also release all my code under free licenses where possible in the hope that they might be useful to others. I enjoy developing many small systems for both personal and educational use. Aside from the projects listed on my personal website, in the past I have also written a web-based remote control for WinAMP, and “audio emoticon” software for use with MSN Messenger, which was downloaded more than a million times. At University I was in a group named “CSLib” (Computer Science Library), which maintained a centralised software repository for other students in the department. This involved building and maintaining software, often compiled from source. It also involves managing a Windows 2003 Terminal Server for remote use by other students. My third year individual project was to design and implement a cross platform document sharing system which featured zero-configuration peer discovery, and password-less, decentralised authentication whilst maintaining privacy and security.

Open Source Contributions