Created CI pipelines for testing individual microservices and their environment, resorting to local containerised infrastructure (e.g. AWS Lambda Gateway) to create and test complete systems end-to-end. Automated the migration of multiple databases and applications across different IaaS providers. Audited multiple projects' monitoring and observability practices.
Built and mantained Golang libraries and services in a (massively) service-oriented and event-oriented architecture, backed by Cassandra, NSQ and Kafka. Extracted business analytics using BigQuery.
Built and maintained Golang services following best code practices. Managed Kubernetes clusters with services interacting across multiple public clouds (GCP, AWS, Heroku). Improved the continuous delivery pipelines velocity, having achieved a ~2.4x speedup. Developed in TDD, having improved development testing practices to gain a speedup of ~8-10x speedup in some code bases. Defined container security best practices and automated container images' vulnerability scanning during CI.
Early adopter of Docker and its ecosystem; promoted it as a development environment tool both internally and publicly, having containerised multiple applications for faster onboarding. Developed Ansible playbooks for provisioning Linux machines; particularly relevant are the setup of a PostgreSQL multi-standby servers' cluster with cascading streaming replication, and automated database backups in single node environments. Experience with AWS products such as EC2, Lambda, RDS, CloudWatch, S3, IAM, CloudFront, Route 53, ELB, EBS and AWS's SDK. Setup of CI/CD pipelines for multiple platforms (Ruby, Python, Node.js). Implemented RESTful APIs in Node.js backed by PostgreSQL, MongoDB and Redis in multiple areas, from IoT devices' authentication and time-series data to Natural-Language Processing work queues. Developed front-end apps in React/Redux, Angular and Handlebars/jQuery, some with server-side rendering.