Daniel Li, Developer in London, United Kingdom
Daniel is available for hire
Hire Daniel

Daniel Li

Verified Expert  in Engineering

Software Developer

Location
London, United Kingdom
Toptal Member Since
August 9, 2022

Daniel has nine years of experience in the industry, working across the stack on the front end, back end, infrastructure, operations, DevOps, and platform engineering. He is the author of Building Enterprise JavaScript Applications and Internal Developer Platform on AWS, published by Packt and Manning, respectively. Daniel is a regular speaker at meetups and conferences, most recently at PlatformCON and HKOSCon.

Portfolio

Zinc
TypeScript, Vue, Nuxt.js, Node.js, Express.js, MongoDB, Mongoose, Cypress, Jest...
Barogo
Pulumi, Amazon Web Services (AWS), Docker, Docker Compose, AWS CodeBuild...
Long Game
Ansible, Terraform, Prometheus, Grafana, Fluentd, Fluent Bit, Papertrail...

Experience

Availability

Full-time

Preferred Environment

Linux, MacOS, Visual Studio Code (VS Code), Slack

The most amazing...

...project I've done is authoring my book Building Enterprise JavaScript Applications. It was published in 2018 but is still getting rave reviews in 2022!

Work Experience

Staff Software Engineer

2022 - PRESENT
Zinc
  • Contributed to and reviewed code across the front end using Vue and Nuxt.js and back end in Node.js, Express, TypeScript, and MongoDB.
  • Established engineering guidelines (Git workflow) and implemented technical processes, such as postmortems and feature planning.
  • Established and tracked OKRs, including for business value (monthly recurring revenue), code quality, test coverage, uptime, and internal SLAs.
  • Tackled technical debt by writing tests, fixing flakey tests, refactoring, and replacing old packages.
  • Improved company-wide processes, including the process for proposing new features.
  • Prepared the documents for the ISO 27001 certification and audit.
  • Doubled the engineering team by sourcing developers via Workable and Cord and conducting interviews.
  • Handled customer support inquiries and authored articles on the knowledge base and help center.
Technologies: TypeScript, Vue, Nuxt.js, Node.js, Express.js, MongoDB, Mongoose, Cypress, Jest, CircleCI, DigitalOcean, Single Sign-on (SSO), OAuth 2, Auth0, Auth0 Management API v2, Cloudflare

Staff DevOps Engineer

2021 - 2022
Barogo
  • Designed and implemented robust infrastructure from scratch on AWS.
  • Established Pulumi as the infrastructure-as-code tool for provisioning AWS resources.
  • Set up end-to-end tests and CI/CD pipeline using AWS CodeBuild.
  • Dockerized and set up pipelines for deploying applications to AWS ECS.
  • Set up a data anonymization pipeline from Amazon RDS for PostgreSQL.
Technologies: Pulumi, Amazon Web Services (AWS), Docker, Docker Compose, AWS CodeBuild, AWS CodePipeline, Amazon Elastic Container Registry (ECR), Amazon Elastic Container Service (Amazon ECS), Amazon S3 (AWS S3), AWS IAM, Secret Management, VPN, Datadog, Git, JavaScript, TypeScript, Jest, NestJS, Socket.IO, Node.js, DevOps

Senior DevOps Engineer

2020 - 2020
Long Game
  • Automated configuration of local and remote hosts using Ansible playbooks and Docker.
  • Set up Terraform to manage new and existing AWS, GitHub, and Cloudflare resources.
  • Performed vulnerability scanning with Qualys and program lead for the HackerOne bug bounty program.
  • Secured our API against DDoS attacks by integrating with Cloudflare.
  • Separated monolithic AWS environment into separate accounts for playground, development, and production.
  • Designed AWS networking and configured AWS Client VPN.
  • Dockerized workloads and migrated them from AWS Elastic Beanstalk to Amazon ECS.
  • Migrated our secrets management from credstash to AWS Secrets Manager.
  • Implemented monitoring and metrics platforms from scratch using Prometheus and Grafana.
  • Revamped the logging workflow using Fluent Bit, FireLens, Amazon Kinesis Data Firehose, Elasticsearch, and Kibana.
Technologies: Ansible, Terraform, Prometheus, Grafana, Fluentd, Fluent Bit, Papertrail, Amazon Web Services (AWS), AWS IAM, AWS Elastic Beanstalk, Amazon Elastic Container Service (Amazon ECS), Secret Management, Amazon Kinesis, Elasticsearch, Kibana, Docker, Git, Ubuntu, MacOS, Linux, JavaScript, Node.js, Bash, Cloudflare, Qualys, Certified Ethical Hacker (CEH), OpenVPN, VPN, DevOps

DevOps Engineer

2017 - 2020
Vonage
  • Built and administer Kubernetes clusters, including CI workflow design, secrets management, and logging.
  • Containerized services using Docker and migrated them to run on Kubernetes.
  • Automated provisioning and configuration of our existing infrastructure using Terraform and Puppet.
  • Implemented monitoring of our services using Telegraf, Prometheus, and Grafana.
  • Set up CI pipelines using Travis CI and Jenkins configured using JCasC and Jobs DSL.
  • Documented client-facing APIs using Swagger and OpenAPI, as well as internal processes and conventions.
  • Designed and implemented unit and integration tests using Mocha, Chai, and Sinon.JS.
  • Designed and implemented E2E tests using Gherkin, Cucumber, and Behave (Python).
  • Improved the API performance by optimizing Couchbase indexes.
  • Designed and ran stress and performance tests on our API using Artillery.
Technologies: Kubernetes, Kubespray, MetalLB, NGINX, Gloo, Decentralized Exchanges (DEXs), Gangway, Helm, Kustomize, Skaffold, Ansible, Vagrant, Terraform, Packer, Amazon Web Services (AWS), AWS IAM, Amazon DynamoDB, Docker, Docker Compose, Jenkins, Travis CI, Jenkins Job DSL, Jenkins Pipeline, Telegraf, Prometheus, Grafana, Git, Ubuntu, Debian, Linux, Puppet, JavaScript, Node.js, Bash, Restify, Cucumber, Gherkin, Artillery, Couchbase, N1QL, NPM, YARN, Webpack, Babel, OpenAPI, RAML, API Blueprint, Markdown, Mocha, Chai, Sinon.JS, ESLint, JSON Web Tokens (JWT), DevOps

Founder and Managing Director

2015 - 2018
Brew Creative
  • Managed every aspect of the business, including market research, client acquisition, drafting contracts, bookkeeping, accounting, design, development, and system administration.
  • Developed and deployed websites and web and hybrid mobile applications.
  • Organized meetups for React and Elixir and co-hosted a meetup to help people get into programming.
Technologies: JavaScript, Node.js, HTML, CSS, Sass, Compass, jQuery, React, AngularJS, Handlebars, Blaze, Ionic, Cordova, Meteor, KeystoneJS, Express.js, Ghost, MongoDB, SQLite, NGINX, Git, NPM, YARN, SystemJS, Webpack, Babel, JSX, Firebase, Shopify, BrainTree, PayPal, PayPal API, Braintree API, Braintree SDK, Digital Payments, Uploadcare, Ubuntu, DNS, SMTP, Postfix, Dovecot, PM2, Sketch, InVision, User Interface (UI), User Experience (UX), Disqus

Front-end Developer

2016 - 2017
UENI
  • Led the front-end development for mobile and web platforms such as Service Matcher, Pathfinder, and Walker Portal.
  • Proposed and executed various initiatives, organized weekly developer talks—DevTalks, administered the professional development budget, improved the onboarding process, and created product requirements and specification document templates.
  • Collaborated with our in-house designer on wireframes, designs, and prototypes.
Technologies: JavaScript, TypeScript, Python, Radium, jQuery, Redux, React, AngularJS, Angular, Polymer, Web Components, Ionic, Cordova, Kubernetes, Docker, Docker Compose, Mocha, Chai, Sinon.JS, Karma, NPM, YARN, Bower, Babel, Webpack, ESLint, Firebase, Mailchimp, Ubuntu, NGINX, Ghost, MongoDB, SQLite, Sketch, InVision, Zeplin, Git

Web Developer

2014 - 2015
TAG
  • Acted as a lead front-end developer for multiple web and mobile projects for clients, including the British Council, Chinese University of Hong Kong, BlackRock, Martell, and Hong Kong Football Club.
  • Maintained multiple WordPress sites and updated content on those sites.
  • Performed ad-hoc bug fixes and new features to existing websites using PHP and JavaScript.
Technologies: PHP, JavaScript, ActionScript 3, HTML, CSS, Sass, Compass, Meteor, AngularJS, C3.js, D3.js, Drupal, Magento, WordPress, ShareThis, Starling, Bootstrap, Git, Redmine

Web Developer

2014 - 2014
Wunderman Thompson
  • Worked with various CMSs, including Kentico, Umbraco, Magento, SharePoint 2013, and Microsoft Content Management System (MCMS).
  • Served as a lead front-end developer on the campaign website for Ocean Park. The implementation includes a custom-built IE8-compatible horizontal and vertical parallax framework.
  • Acted as a sole maintainer on the corporate website of Taikoo Place, using MCMS, the predecessor of SharePoint.
Technologies: C#.NET, JavaScript, jQuery, Umbraco, Kentico, Magento, Microsoft Content Management Server 2002, SharePoint, bbPress, Elasticsearch, Subversion (SVN)

Building Enterprise JavaScript Applications

https://www.packtpub.com/product/building-enterprise-javascript-applications/9781788477321
Building Enterprise JavaScript Applications is a book that explains how different components of the JavaScript ecosystem fit together.

In the book, I guide the readers to build a simple API and React application from scratch. The reader starts by setting up a development environment using Git, Yarn, Babel, and ESLint. Then, they will build a stateless API service using Express, Elasticsearch, and JSON Web Tokens. The front end is built using React, Redux, and webpack.

A central theme in the book is maintaining code quality. I taught readers how to enforce a test-driven development process using Selenium, Cucumber, Mocha, Sinon.JS, and Istanbul. The focus then shifts toward automation and infrastructure, working with continuous integration servers like Jenkins, deploying services inside Docker containers, and running them on Kubernetes.

Internal Developer Platform on AWS

https://www.manning.com/liveprojectseries/internal-developer-platform-ser
Internal Developer Platform on AWS is a Manning live project that teaches learners how to build an Internal Developer Platform (IDP) on AWS using TypeScript and CDK for Terraform.

The IDP is a web app that provides a self-service platform that product engineers can use to provision test and development environments without the involvement of the operations or platform team.

Languages

JavaScript, Gherkin, TypeScript, Bash, Markdown, Python, HTML, CSS, Sass, PHP, ActionScript 3, C#.NET, Assembly

Paradigms

DevOps, Test-driven Development (TDD), Continuous Integration (CI)

Frameworks

JSON Web Tokens (JWT), Nuxt.js, Express.js, Cypress, Jest, OAuth 2, NestJS, YARN, Redux, AngularJS, Angular, Ionic, Selenium, Compass, Bootstrap

Libraries/APIs

Node.js, OpenAPI, Vue, Auth0 Management API v2, Socket.IO, Jenkins Job DSL, Jenkins Pipeline, Restify, Chai, Sinon.JS, jQuery, React, Polymer, Handlebars, PayPal API, Braintree API, C3.js, D3.js, Starling, Passport.js

Tools

Git, Terraform, Jenkins, Cucumber, Slack, Mongoose, CircleCI, Auth0, Docker Compose, AWS CodeBuild, Amazon Elastic Container Registry (ECR), Amazon Elastic Container Service (Amazon ECS), AWS IAM, Ansible, Grafana, Fluentd, Papertrail, Kibana, OpenVPN, NGINX, Helm, Vagrant, Packer, Travis CI, Telegraf, Puppet, Artillery, NPM, Webpack, Babel, Mocha, Karma, Bower, Mailchimp, Ghost, Sketch, InVision, Zeplin, SystemJS, JSX, Braintree SDK, Uploadcare, Postfix, PM2, Redmine, Kentico, bbPress, Subversion (SVN), VPN

Platforms

Amazon Web Services (AWS), Docker, Linux, MacOS, Visual Studio Code (VS Code), DigitalOcean, AWS Elastic Beanstalk, Ubuntu, Kubernetes, Gloo, Debian, Firebase, Meteor, KeystoneJS, Shopify, Drupal, Magento, WordPress, Umbraco, Microsoft Content Management Server 2002, SharePoint

Other

Pulumi, CDK for Terraform, Biochemistry, Single Sign-on (SSO), Cloudflare, AWS CodePipeline, Secret Management, Prometheus, Fluent Bit, Amazon Kinesis, Qualys, Certified Ethical Hacker (CEH), Kubespray, MetalLB, Decentralized Exchanges (DEXs), Gangway, Kustomize, Skaffold, N1QL, RAML, API Blueprint, ESLint, Radium, Web Components, Cordova, Istanbul, Blaze, BrainTree, PayPal, Digital Payments, DNS, SMTP, Dovecot, User Interface (UI), User Experience (UX), Disqus, ShareThis, Webhooks, Languages, Compilers, Parsers, Boolean Logic, Hardware

Storage

MongoDB, Amazon S3 (AWS S3), Datadog, Elasticsearch, Amazon DynamoDB, Couchbase, SQLite, JSON/XML Schemas

2010 - 2013

Bachelor's Degree in Biochemistry

Imperial College London - London, UK

NOVEMBER 2021 - PRESENT

Build a Modern Computer from First Principles: From Nand to Tetris

Coursera

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring