Borja Salazar, Developer in Madrid, Spain
Borja is available for hire
Hire Borja

Borja Salazar

Verified Expert  in Engineering

Bio

A telecommunication engineer with a wide range of technical capabilities, Borja has over seven years of experience working in the international environment and developing projects fully in English with people from different countries, both remotely and on-site. He has worked with various technologies, from low-level Linux embedded systems to cloud servers. One of Borja's strengths is having both a general overview and a detailed approach and understanding of the topic addressed.

Portfolio

Colada App SL
Terraform, Kubernetes, Helm, Spring, Linux, Software Architecture, Agile...
Nokia
Java, Software Architecture, Spring, Linux, Agile, MongoDB Atlas, DevOps, Bash...
Fon Technology SL
Java, MQTT, Agile, Spring, Linux, Software Architecture, MongoDB Atlas, Bash...

Experience

  • Java - 10 years
  • Linux - 10 years
  • Software Architecture - 6 years
  • Infrastructure as Code (IaC) - 5 years
  • MongoDB Atlas - 5 years
  • AWS DevOps - 5 years
  • DevOps - 4 years
  • Kubernetes - 3 years

Availability

Part-time

Preferred Environment

Linux, Emacs

The most amazing...

...project I've defined and developed is a cloud real-time management system for routers that handles millions of devices.

Work Experience

Co-founder and Chief Technology Officer (CTO)

2020 - PRESENT
Colada App SL
  • Deployed an AWS infrastructure using Terraform and Kubernetes. Implemented a CI/CD system using GitLab CI and best general practices to allow fast and secure deployments.
  • Maintained a monitoring system based on the Grafana framework with an alert configuration.
  • Developed a mobile app, enabling people to order laundry and dry-cleaning services from nearby people or businesses.
  • Defined and developed a microservices backend using a WebFlux reactive programming solution on the Spring framework.
  • Implemented base libraries to carry out different use cases, such as the async communication between services using Amazon SQS or Amazon SNS solution, persistent scheduling via the Quartz framework, or reactive lock implementation with Hazelcast.
  • Provided the internal support web development based on the Vue.js framework, allowing management and support teams to easily handle tickets opened by clients.
  • Oversaw native Android app development in Kotlin. Developed new functionalities, like A/B testing and payment integration with Google Pay.
Technologies: Terraform, Kubernetes, Helm, Spring, Linux, Software Architecture, Agile, MongoDB Atlas, DevOps, Bash, Amazon Web Services (AWS), Amazon EKS, Prometheus, Terragrunt, eCommerce, Docker, GitLab, GitLab CI/CD, CI/CD Pipelines, DevSecOps, Grafana, AWS DevOps, Architecture, Git, Networks, Continuous Delivery (CD), Amazon S3 (AWS S3), Swagger, REST APIs, NoSQL, Cost Cutting (Cost-out), Software, JavaScript, Identity & Access Management (IAM), AWS Cloud Architecture, Amazon Virtual Private Cloud (VPC), Site Reliability Engineering (SRE), Back-end, Amazon EC2, Amazon Elastic Container Service (ECS), DevOps Engineer, Shell Scripting, Automation, Monitoring, Telemetry, Networking, Web Security, Python, Cloud Infrastructure, Load Balancers, Elastic Load Balancers, Container Orchestration, Web Applications, Firebase, Security, Cloud, Web Hosting, SQL, Event-driven Architecture, Infrastructure as Code (IaC), Amazon Simple Email Service (SES), Cloud Security, Network Engineering, Amazon, Continuous Deployment, Spring Boot, Traefik, Cloud Architecture, Bash Script, Docker Compose, Amazon CloudWatch, OAuth, OAuth 2, API Gateways, DNS, Content Delivery Networks (CDN), Docker Hub, Storage, Infrastructure, AWS IAM, Amazon EC2 API, Continuous Development (CD), Continuous Integration (CI), APIs, Design Patterns, SSL, Cloud Deployment, Scalability, System Architecture, AWS ALB, MongoDB, Amazon CloudFront CDN, Cost Reduction & Optimization (Cost-down), Artifactory, Autoscaling, AWS NLB, AWS ELB, ECS, Containers, Amazon Simple Notification Service (SNS), Amazon Simple Queue Service (SQS), AWS CLI, Startups, Caching, AWS Auto Scaling, Python 3, Distributed Systems, Microservices, REST, Spring Cloud, Amazon RDS, Android Studio, Containerization, TypeScript, Loggers, Firewalls, Database Migration, Cloud Migration, Proxies, IT Infrastructure, Java, React, Cloud Computing, Android, Microservices Architecture, Full-stack, SSL Certificates, Stripe, Servers, Amazon API, Container Management

Technical Lead

2019 - 2020
Nokia
  • Worked on task identification, definition, and prioritization for a router cloud management system. Coordinated and helped back-end and embedded software teams using the Agile methodologies to deliver new functionalities regularly.
  • Proposed and implemented different architecture changes for a legacy and POC-only tested component. These changes allowed the solution to scale from hundreds of devices to millions. It also reduced the expected infrastructure costs by up to 30%.
  • Performed as customers' point of contact for troubleshooting via a ticketing system.
Technologies: Java, Software Architecture, Spring, Linux, Agile, MongoDB Atlas, DevOps, Bash, Amazon Web Services (AWS), Prometheus, Terragrunt, Docker, GitLab, GitLab CI/CD, CI/CD Pipelines, DevSecOps, Grafana, AWS DevOps, Architecture, Git, Networks, PostgreSQL, Continuous Delivery (CD), Amazon S3 (AWS S3), Swagger, REST APIs, NoSQL, Cost Cutting (Cost-out), IT Services, Identity & Access Management (IAM), AWS Cloud Architecture, Amazon Virtual Private Cloud (VPC), Site Reliability Engineering (SRE), Back-end, Amazon EC2, Amazon Elastic Container Service (ECS), DevOps Engineer, SonarQube, Shell Scripting, Automation, Lambda Functions, Monitoring, Telemetry, Networking, Network Security, Web Security, Python, Cloud Infrastructure, Load Balancers, Elastic Load Balancers, Container Orchestration, Cloud, Web Hosting, Event-driven Architecture, Infrastructure as Code (IaC), Cloud Security, Network Engineering, Amazon, Puppet, RabbitMQ, Continuous Deployment, Keycloak, Spring Boot, Cloud Architecture, Bash Script, Docker Compose, SAML, OAuth, OAuth 2, API Gateways, DNS, Content Delivery Networks (CDN), Docker Hub, Storage, Infrastructure, AWS IAM, Amazon EC2 API, Amazon Cognito, Continuous Development (CD), Continuous Integration (CI), APIs, Design Patterns, SSL, Cloud Deployment, Scalability, System Architecture, Scaling, AWS ALB, MongoDB, Amazon CloudFront CDN, Cost Reduction & Optimization (Cost-down), Jira, Artifactory, Autoscaling, AWS NLB, AWS ELB, ECS, Containers, Amazon Simple Notification Service (SNS), AWS CLI, Caching, Python 3, Distributed Systems, Microservices, REST, Spring Cloud, Containerization, Loggers, Firewalls, Load Testing, Proxies, IT Infrastructure, Cloud Computing, Packet Communication, Network Optimization, Microservices Architecture, SSL Certificates, Servers, AWS Fargate, IP Networks, Amazon API, Container Management

IoT Software Architect

2017 - 2019
Fon Technology SL
  • Worked on the architecture design for Fon smart wifi, managing over 700,000 customer premises equipment (CPE) per ISP, handling more than five million events per day.
  • Defined, developed, and validated a microservices server back-end architecture based on the Java Spring framework and deployed in AWS using ECS container orchestration. Defined and maintained a REST API using an OpenAPI specification.
  • Developed router-to-back-end communication using MQTT protocol and deployed it using VerneMQ.
  • Worked on task identification, definition, and prioritization for a router cloud management system. Coordinated and helped the back-end and embedded software teams using the Agile methodologies to deliver new functionalities regularly.
  • Investigated, evaluated, and selected the necessary technologies or a framework to fulfill the requirements from the product management department.
Technologies: Java, MQTT, Agile, Spring, Linux, Software Architecture, MongoDB Atlas, Bash, Amazon Web Services (AWS), Prometheus, Docker, GitLab, GitLab CI/CD, CI/CD Pipelines, Grafana, Go, AWS DevOps, Architecture, Git, MySQL, Networks, PostgreSQL, Continuous Delivery (CD), Amazon S3 (AWS S3), Swagger, REST APIs, NoSQL, Cost Cutting (Cost-out), Business Services, Identity & Access Management (IAM), AWS Cloud Architecture, Amazon Virtual Private Cloud (VPC), Back-end, Amazon EC2, SonarQube, Shell Scripting, Automation, Lambda Functions, Monitoring, Networking, Python, Cloud Infrastructure, Redis, Load Balancers, Elastic Load Balancers, Container Orchestration, Web Applications, Cloud, Event-driven Architecture, Jenkins, Cloud Security, Network Engineering, Amazon, RabbitMQ, NGINX, Continuous Deployment, Spring Boot, Cloud Architecture, Bash Script, Docker Compose, Amazon CloudWatch, OAuth, API Gateways, DNS, Docker Hub, Infrastructure, AWS IAM, Amazon EC2 API, Amazon Cognito, Continuous Development (CD), Continuous Integration (CI), APIs, Design Patterns, SSL, Cloud Deployment, Scalability, System Architecture, Scaling, AWS ALB, MongoDB, Amazon CloudFront CDN, Cost Reduction & Optimization (Cost-down), Confluence, Jira, Autoscaling, AWS ELB, ECS, Containers, Amazon Simple Notification Service (SNS), AWS CLI, Startups, Caching, Python 3, Distributed Systems, Microservices, REST, Serverless Architecture, Spring Cloud, Containerization, Loggers, Firewalls, Proxies, Cloud Computing, Packet Communication, Network Optimization, Configuration Management, Microservices Architecture, SSL Certificates, AWS Fargate, Embedded Linux, IP Networks, Amazon API, Container Management, OpenSSL

Embedded Linux Engineer

2014 - 2017
Fon Technology SL
  • Developed a wifi router called Gramofon with an integrated music player by porting a third-party audio application.
  • Leveraged open-source projects to reduce costs using the Linux-based router operating system OpenWrt for products based on MIPS and ARM.
  • Gained experience with several wifi drivers, both open-source, such as nl80211 and ath9k, and proprietary, such as MediaTek and Qualcomm.
  • Implemented a user space application in C to interact with several wifi capabilities, such as 802.11k, 802.11v, and 802.11r of several drivers.
  • Reduced the third-party integration time by rebuilding a Linux user space daemon in C that implemented wifi hotspot functionality and a HAL.
  • Programmed several user space daemons interacting with the kernel using Netlink, ioctl system call, proc filesystem, and other Linux interfaces.
Technologies: C, Linux, OpenWRT, WiFi, Emacs, Agile, Bash, Docker, CI/CD Pipelines, Git, REST APIs, Networks, Continuous Delivery (CD), NoSQL, Shell Scripting, Networking, Python, Jenkins, Bash Script, DNS, APIs, Design Patterns, SSL, Cloud Deployment, MongoDB, Relational Databases, Confluence, Jira, Containers, Startups, Amazon Web Services (AWS), REST, Containerization, Firewalls, Proxies, JavaScript, Packet Communication, Network Optimization, SSL Certificates, Servers, Embedded Linux, IP Networks, OpenSSL

Research and Development (R&D) Engineer

2012 - 2014
Fon Technology SL
  • Built a wifi location-based service to implement a wifi probe-request monitor user space application in C.
  • Integrated third-party solutions to own products, like a Facebook wifi hotspot functionality for the OpenWrt system.
  • Investigated, analyzed, and developed the proof of concepts for new technologies and solutions for new and existing products in the company’s portfolio.
  • Helped push the company's interests in industry standards by participating in forums, such as WiFi Alliance (WFA) or Wireless Broadband Alliance (WBA).
Technologies: C, Java, WiFi, Linux, Bash, Git, REST APIs, MySQL, Networks, Continuous Delivery (CD), JavaScript, Networking, SQL, PHP, Bash Script, Confluence, Jira, Containers, Startups, Proxies, Packet Communication, Network Optimization, Embedded Linux, IP Networks, OpenSSL

Real-time WiFi Management System

This solution allowed big ISPs to manage and monitor their customers' WiFi routers in real time.

The system had two main parts. The first one allowed to manage through MQTT millions of devices of different brands using the same APIs. These APIs were used by mobile applications and internal customer support web systems. The second part implemented functionalities to optimize customers' home WiFi usage using various standards and proprietary mechanisms. Some of these functionalities were controlled in the cloud, which meant managing several thousand events per second.

One of the big challenges of this system was to scale from a proof of concept of 200 devices to several million devices at the same time. To achieve this, we made several changes, such as adding a dedicated MQTT server. Several use cases were refactored so that they were handled asynchronously, making horizontal scaling possible. We also implemented several optimizations around our main database, MongoDB, to be able to handle all the data received in the cloud.

With these changes, in less than five months since we started the first deployment, we achieved a solution that managed more than two million devices and allowed us to continue adding more.

Migration to Kubernetes

I migrated an app running in a few droplets to a Kubernetes cluster in DigitalOcean as well as the node-running and managed databases. I defined and implemented a Git workflow with CI/CD pipelines in CircleCI. Then, I added the scheduled database backups to cloud storage services. Furthermore, I established a monitoring system based on the Grafana stack to monitor and evaluate the system with customized dashboards. Also, I've helped the team with architectural and code-related changes and migrations of their core services.

Laundry Service App

https://colada.app
Native applications for Android and iOS that allow customers to hire laundry and dry cleaning services to people or establishments nearby.

Some of the features of the solution are authentication with Google/Facebook, management of schedules and delivery area of orders, payment through Stripe, invoice generation, management of courier service with 3rd-party providers, an in-app chat for customers-shop communication, coupon handling, and a notification system.

The biggest challenge was to make the user experience consistent and avoid bugs or crashes. We used an "API first" approach, which led us to define the API using OpenAPI and generate code from that definition. This allowed us to review changes and detect possible incompatibilities in the API before implementing them in code. We separated the functionalities into microservices and internally into different "services," simplifying adding new features. We also had a very high test coverage (>70%). Finally, implemented several alarm and monitoring mechanisms over the Grafana stack to detect any server problem, enabling us to react quickly to any incident.

Our app had a very high rating (>4.5) in the app stores and an almost non-existent number of bugs.

Local Development Efficiency Improvement

I integrated the local stack with Terraform to speed up the local development, allowing developers to test and detect bugs before deploying changes into the cloud.

Furthermore, I improved packer configurations to interact with custom-made images hosted in AWS and added a cloud logging solution to aggregate logs from different sources.

Telegram Chatbot | Healthcare

A pill reminder and medication tracker in JavaScript deployed in AWS Lambda with the Serverless Framework to notify users, via Telegram Bot API, of the time and day to take their medication. I configured different schedulers via CloudWatch Events to trigger the lambda executions.

Terraform and CI/CD for API Gateway/ECS/MongoDB Atlas Stack

I audited the client's AWS setup. I migrated the existing ECS/API gateway stack to Terraform, implementing CI/CD pipelines in GitHub to ease the developer experience. I also incorporated a cost-saving mechanism to reduce the AWS bill. I made a list of future work and pending tasks to improve their existing architecture further.
2007 - 2013

Master's Degree in Telecommunications

Faculty of Engineering Bilbao - Bilbao, Spain

MARCH 2023 - PRESENT

AWS Certified Solutions Architect Professional

Amazon Web Services

DECEMBER 2022 - DECEMBER 2023

Microsoft Azure Administrator

Microsoft

Libraries/APIs

REST APIs, Amazon EC2 API, Stripe, Amazon API, Terragrunt, OpenSSL, Vue, Node.js, Telegram Bot API, Telegram Messenger API, React

Tools

Terraform, MQTT, MongoDB Atlas, Amazon EKS, GitLab, GitLab CI/CD, Grafana, Amazon Simple Notification Service (SNS), Amazon Simple Queue Service (SQS), Git, GitHub, Amazon Virtual Private Cloud (VPC), CircleCI, Amazon Elastic Container Service (ECS), Amazon Simple Email Service (SES), Traefik, NGINX, Docker Compose, Docker Hub, AWS IAM, Amazon CloudFront CDN, Jira, AWS ELB, Android Studio, AWS Fargate, IntelliJ IDEA, Emacs, RabbitMQ, AWS CLI, HashiCorp, SonarQube, Amazon CloudWatch, Confluence, Artifactory, Helm, Ansible, Packer, Jenkins, Puppet, Keycloak, Azure Kubernetes Service (AKS), Azure Network Security Groups, Azure Key Vault, Amazon Cognito, Sentry

Languages

Java, C, Kotlin, Bash, Bash Script, Python, SQL, SAML, Python 3, Go, JavaScript, TypeScript, PHP

Frameworks

Spring, Swagger, Spring Boot, OAuth 2, gRPC, Serverless Framework

Paradigms

DevOps, Continuous Delivery (CD), Automation, Event-driven Architecture, Continuous Deployment, Continuous Development (CD), Continuous Integration (CI), Design Patterns, Microservices, REST, Load Testing, Microservices Architecture, Agile, DevSecOps, Serverless Architecture

Platforms

Linux, Kubernetes, Docker, Amazon Web Services (AWS), Amazon EC2, Firebase, Amazon, AWS ALB, AWS NLB, Android, Embedded Linux, OpenWRT, AWS Lambda, DigitalOcean, Azure, Apache Kafka

Storage

NoSQL, Redis, Cloud Deployment, MongoDB, Database Migration, Amazon S3 (AWS S3), Relational Databases, MySQL, PostgreSQL, Datadog, Azure Blobs

Industry Expertise

Network Security

Other

Software Architecture, WiFi, TCP/IP, Network Protocols, Prometheus, CI/CD Pipelines, AWS DevOps, Architecture, Networks, Loggers, Identity & Access Management (IAM), AWS Cloud Architecture, Site Reliability Engineering (SRE), Startups, Back-end, DevOps Engineer, Shell Scripting, Monitoring, Networking, Web Security, Cloud Infrastructure, Load Balancers, Elastic Load Balancers, Container Orchestration, Web Applications, Security, Cloud, Web Hosting, Infrastructure as Code (IaC), Cloud Security, Cloud Architecture, OAuth, API Gateways, DNS, Content Delivery Networks (CDN), Storage, Infrastructure, APIs, SSL, System Architecture, Scalability, Scaling, Amazon RDS, Cost Reduction & Optimization (Cost-down), Autoscaling, ECS, Containers, Caching, AWS Auto Scaling, Distributed Systems, Spring Cloud, Containerization, Firewalls, Cloud Migration, Proxies, IT Infrastructure, Cloud Computing, AWS Certified Solution Architect, Packet Communication, Network Optimization, SSL Certificates, Servers, IP Networks, Amazon Machine Images (AMI), Container Management, Argo CD, GitOps, eCommerce, Cost Cutting (Cost-out), Lambda Functions, Telemetry, Network Engineering, Configuration Management, GitHub Actions, Software, IT Services, Business Services, Azure Virtual Networks, Azure Virtual Machines, Scraping, Telegram Bots, Windows Network Load Balancing (NLB), Amazon Route 53, Full-stack

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