About

Summary

Jimmy Tang is an engineer at Apple. He has worked at Voysis as an SRE, Logentries within Rapid7, Quantum Biosystems, Digital Repository of Ireland and a number of grid storage systems in the HPC Europa 1 and 2 programs, developing management and storage solutions for numerical computing. He has also participated in the development and deployment of the infrastructure for the Irish African Partnership, 1641 Depositions, IITAC, eINIS and a number of other research projects.

Jimmy has extensive knowledge in the development, deployment and maintenance of large-scale storage and computer systems. He has in the past provided software development and support services to numerous researchers, research groups and projects in the area of High Performance Computing.

Specialties: systems programming, beowulf cluster architecture, high performance computing, numerical computing, SCM

Resume

The following is an incomplete resume, it is work in progress.

Research Interests

Parallel/distributed file systems, automated systems for software and systems deployment, systems administration of large scale systems, SCM, systems programming, beowulf cluster architecture, high performance computing, numerical computing.

Profile

Jimmy Tang is an engineer at Apple. He has worked as an SRE at Voysis, Principal DevOps engineer at Logentries/Rapid7, Quantum Biosystems, Digital Repository of Ireland and a number of grid storage systems in the HPC Europa 1 and 2 programs, developing management and storage solutions for numerical computing. He has also participated in the development and deployment of the infrastructure for the Irish African Partnership, 1641 Depositions, IITAC, eINIS and a number of other research projects.

Jimmy has extensive knowledge in the development, deployment and maintenance of large-scale storage and computer systems. He has in the past provided software development and support services to numerous researchers, research groups and projects in the area of High Performance Computing.

Special Skills

Programming

  • Python programming, C programming, MPI programming. Experience with Perl, Fortran, Matlab, Labview, C++, Java, Haskell.
  • Developed iRODs microservices for storage and processing of simulation data, mixture of C, C++ and shell scripting.
  • Developed wrappers to numerical libraries.
  • SCM of codebases (automation, testing, documentation etc…)

Administration and Configuration

  • Deploying and maintaining AWS based infrastructures.
  • GPFS, Lustre, Network block devices and NFS for serving user data on compute clusters and other systems.
  • Globus Toolkit installation and configuration for building data grids.
  • System administration of various UNIX and Linux distributions. Expert at automated installation and configuration.
  • DNS, SMTP, DHCP, LDAP, SLURM and other services for running a network and clusters. Administration and configuration of various SAN storage systems.
  • Expert with MySQL, PostgreSQL. Experience with OracleDB.
  • Configuration management with ansible, chef, saltstack, cfengine2, puppet and cdist.
  • Packaging of software with .deb, .rpm and other packaging systems.
  • Cobbler for baremetal installations.

Miscellaneous

  • Project planning and supervising interns and TCD students on software development projects.
  • Mentoring and providing insight and support to graduate students and researchers.
  • Leading the developement work on various projects such as cports and slurm-bank.
  • Excellent troubleshooting skills. Strong desire for tested and repeatable deployment of systems.
  • Interacting with opensource community to develop and test code, e.g. bup, wvtest, slurm, git-annex.
  • Developed training material for researchers and students.
  • Infiniband and Myrinet interconnects, setup and administration.
  • Experience with administering and tuning storage systems, e.g. IBM DS3000 and DS4000 systems, Dell MD1000 and MD3000 storage systems, DDN Storage systems.

Current Employment

Engineer at Apple

  • Engineering things in the AI/ML org with Siri.

Past Employment

Senior High Performance Computing SRE at Voysis

Responsiblities include

  • Deployment and maintenance of HPC cluster(s)

Senior Software/Devops/Ops Engineer, Logentries at Rapid7

Responsibilities are as before, except Rapid7 has acquired Logentries.

Principle DevOps Engineer, Logentries.

Responsibilities include

  • Building automated pipelines for deploying systems.
  • Developement and Operational work on production systems.
  • Developing in house tools.
  • The usual ops and dev related tasks with keepings running and scaling out.

Principle DevOps Engineer, Quantum Biosystems.

Responsibilities include

  • Management of IT infrastructure.
  • Deployment and management of compute and storage cluster.
  • Software development for data capture devices on the Novena computer platform.
  • System integration and development on the Novena computer platform.
  • Continuous delivery, integration and testing of software projects. Maintaining Debian based repository for deployments.
  • Maintenance of dependency chain for building applications.

Senior Software Engineer, Digital Repository Ireland, Trinity Centre for High Performance Computing.

Responsibilities include

  • Overall architecture and design
  • Leading a team of developers

Research Assistant and Systems Administrator, Trinity Centre for High Performance Computing.

Responsibilities included

  • Software developement for various researchers and users of the TCHPC facilities.
  • Software development and administration on iRODS which is a part the HPC Europa 2 project. Development of workflows and microservices.
  • Evaluation of various distributed and/or parallel filesystems suchas GPFS, Glusterfs,
  • PVFS2, Lustre, Tahoe-lafs and Sector for possible future deployments. Development and implementation of policies for allocating resources for accounting usage.
  • Development of cports for automated software builds, documentation and environment con- figurations for end users.
  • Package creation and administration for the software repositories that is used to deploy and maintain the compute clusters. Automation of installation processes of compute nodes. Building the software stacks from source. Writing .rpm and .deb packages for automated software deployment.
  • Development and deployment of various medium sized clusters such as Kelvin, Parsons, Lonsdale and the tools for administering computer systems.
  • Administation of the virtualised machines and floor wide network services for the different research groups from neuroscience, chemistry, physics, genetics, biochemistry and maths.

Notable responsibilities

  • Deployment of Irish African Partnership services which included the setup of DSPACE, OracleDB, Oracle Application Server, LDAP and Handle.net. This project involved taking the existing college RSS and TARA systems and working with a small team to deploy a working system as a demonstrator for the Irish African Partnership. Lead TCD academic for this project was Prof. Jane Grimson.
  • Evaluation of QCDGrid and SRB, deployment of data grid for HPC Europa for research and as a networking activity.
  • GPFS administration for our compute clusters which was one of the largest ipoib enabled GPFS installations at the time of the installation of IITAC 2.0.
  • Systems administration on the Bluegene/P, IITAC (1.0, 1.5 and 2.0), Lonsdale and parsons compute clusters.

Technical support for residential customers

  • Technical support for residential customers

Technical consulting and web applications development

  • Technical consulting and web applications development

Education

  • MSc in High Performance Computing at Trinity College Dublin
  • BSc in Applied Sciences at Dublin Institute of Technology
  • Oatlands College Christian Brothers School, Stillorgan, Dublin

Publications