Alan Bruno Benavides Alvarez

Tech Lead · Full Stack Developer

Full stack developer with 5 years building end-to-end web products. I have led small teams as a tech lead: architectural decisions, stack and standards, and stepping into business logic when the team had no dedicated product role.

My default is the simplest option that solves the real problem — not the most complete one. And I think that with AI in the workflow (Claude Code and local models with Qwen), the technical side is no longer the bottleneck: the focus is on the solutions and on the people building them.

Bolivian and Peruvian citizen — authorized to work in both countries.

Spanish · NativeEnglish · Intermediate (B1)

Principles

How I work

01

Simple until proven otherwise

When there are two paths, the winner isn't the most elegant one — it's the one that puts less risk and less cost on the business. Migrating a whole database might be the "correct" move; an adapter that bridges it might be what keeps the product alive. I decide through that lens and I write it down so the team knows why.

02

An MVP before an inflated estimate

When business asks for something and engineering oversizes it, I don't squeeze the team — morale and stress are part of the system. I first check with the team whether the requirement is genuinely oversized, then mediate with business to cut it down to an MVP, we measure it, and only with that data do we re-estimate time and infrastructure for the rest.

03

AI as an exploration partner, not autocomplete

I use Claude Code and local models (Qwen) where they actually pay off: exploring systems I don't know, debugging, and code review. At Q-minex we received mining rigs of a model we had never handled; with SSH access from the plant network I used AI to map the firmware and its exposed APIs, and out of that came the integration proposal and the factory that brought them into the system — days of discovery cut to hours.

Toolkit

Tech Stack

Languages

TypeScriptJavaScriptGo

Frontend

ReactNext.jsVueNuxt.jsReact NativeTailwind CSSRedux / Redux-SagaZustandPiniaTanStack QueryReact Hook FormVeeValidateZodMaterial UINuxt UIChart.jsThree.js

Backend

NodeNestJSEcho (Go)tRPCgRPCWebSocketsExpressStrapiEnt (Go)PrismaDrizzleREST / OpenAPI (Swagger)Pusher

Auth

OAuth 2.0 / OIDCJWTAWS CognitoFirebase Auth

Databases

PostgreSQLPostGISMongoDBRedisSupabaseTurso (SQLite)Firebase

Infrastructure

AWS (EC2, ECS, LB, CloudFront, S3, ECR, CloudWatch)Cloudflare (Workers, Tunnel, R2)TerraformLinuxNginxSSHSSL/TLSCDNVercelRenderHerokuCoolify

DevOps

GitHub ActionsDockerDocker SwarmPrometheusSentryLinters & formattersAutomated deployments

Testing

VitestJestPlaywrightReact Testing Librarytestify (Go)Postman

Integrations

StripeBinanceZoho CRMResendGoogle Maps APIPush notifications (FCM)

Product & analytics

FigmaGoogle AnalyticsGoogle Tag ManagerMeta Pixel

Payments & transactions

Money moving end to end

End-to-end Stripe implementation at Racquets App Suite for tournament entry fees, court bookings and training sessions. At Q-minex, Binance integration to control ASIC deposits into the main account and automate payouts of the generated balance. Trained on Bolivia's electronic invoicing API.

Track record

Experience

Tech Lead

Full-timeQ-minex(opens in new tab)·Jul 2025 – Jun 2026

Part of the technical core of an 8-person startup, leading a team of three (two developers and a designer) building a platform for cryptocurrency management and remote control of mining equipment, distributed across 3 plants with 111 active rigs and physical capacity for 500. I made all the architectural decisions for the product and we reached the first production deployment in 5 months.

  • Binance integration and real-time operation syncing.
  • Concurrent query module for mining rigs built in Go, talking to the manufacturer's API — managing concurrency without overloading the rigs or losing data.
  • On-premise physical server at each plant bridging to the rigs — only reachable on the local network — and centralizing their control; it reaches the cloud over a Cloudflare Tunnel (no public IP, no inbound ports) and is monitored with Prometheus.
  • Infrastructure on AWS with CI/CD from day one: ECS in production and EC2 for staging, provisioned with Terraform and running Nginx, Docker and Docker Swarm, with observability via CloudWatch.
  • Responsible for planning, code reviews, business logic, and keeping the team aligned with product goals.
  • Polyglot persistence — two PostgreSQL databases and MongoDB, with Prisma or Drizzle depending on the service, and gRPC for service-to-service communication.
  • Nuxt frontend with Pinia, TanStack Query, Chart.js dashboards and 3D animations with Three.js, tested with Vitest and Playwright; a React Native app with biometric auth (Zustand, React Hook Form) was in development.
  • Google Analytics and Meta Pixel for product and acquisition tracking.

Backend & Infrastructure Developer

FreelanceInmobile(opens in new tab)·May 2025 – Jul 2026

Sole owner of the backend and infrastructure for a real-estate platform (inmobile-app.com) where agents manage their properties and get matched with relevant listings. I built the entire backend in Go and owned scalability end to end. Implementations are complete and the product is now in maintenance.

  • Entire backend built in Go with Echo v4, Ent as the ORM (Atlas for versioned migrations), PostgreSQL via pgx, and Redis for feed caching.
  • Advanced search with geographic filters on PostGIS and dedicated indexing to keep queries fast regardless of complexity.
  • Cloudflare Workers for image validation and property matching, keeping heavy processing off the main request flow.
  • Firebase Auth (JWT) and FCM push notifications; Pusher for the real-time chat; media stored on Cloudflare R2 through the S3 SDK.
  • End-to-end ownership of infrastructure and scalability on Render: GitHub Actions CI/CD, Docker, Sentry for error monitoring, and Resend for transactional email.
  • API documented with OpenAPI/Swagger and exercised with Postman; testify for the test suite.

Full Stack Developer

FreelanceGaia del Sur(opens in new tab)·Nov 2025 – Jan 2026

Sole developer of the system that replaced the inherited in-house platform — a black box with no documentation and no visibility — of a specialized academic-bibliography distributor for the Andean region (180,000+ titles). I built it alone in 3 months: a public institutional site with the book catalog, plus an admin panel behind login for catalog, clients, and invoicing.

  • Recovered the 180,000+ titles with a Playwright scraper: the old system had no export and no documented schema. Normalized them into the new PostgreSQL model.
  • Full stack build with Nuxt (SSR), Nuxt UI, and Tailwind CSS on PostgreSQL, deployed on Coolify.
  • tRPC with Zod schemas shared between backend and frontend: a contract change fails at compile time, not in production.
  • Public institutional site with an SEO catalog, plus an admin panel behind login: catalog, clients, and invoicing.
  • Owned everything solo, from recovering the data to modeling it, the backend, and the UI; VeeValidate for form handling.

Senior Frontend Developer

Full-timeElgeniox (DATEC LATAM)(opens in new tab)·Aug 2024 – Jul 2025

Led the frontend of a B2C ecommerce platform for non-perishable goods, taking it from scratch to production in 8 months with one developer reporting to me. I defined the architecture, the stack (Next.js), the code standards, and the design decisions.

  • Architecture organized by domain to stay maintainable as the catalog and features grew.
  • Caching strategies and SEO prioritized from the start, since organic traffic was critical to the business model.
  • Built the CMS from scratch with Strapi and integrated it with the web (branding, home, categories, and promotions) so the team could manage all site content easily.
  • Integrated DATEC's in-house payment gateway.
  • Frontend stack: Zustand for state, React Query for server state, React Hook Form with Zod for validation, Vitest and React Testing Library for tests, and Sentry to catch production failures before users reported them.
  • User tracking events routed through the Next.js server instead of straight from the browser, so ad blockers and other external agents wouldn't drop them and the analytics stayed reliable.

Full Stack Developer

Sole developer of the site for a coffee shop (lalalattecoffee.com): a product showcase with its own CMS so the owners could publish promotions and manage content themselves. Built in under a month and still running in production.

  • Nuxt and Tailwind CSS on top of Turso (SQLite at the edge), with a CMS for the team to manage products and content without a developer.
  • Transactional email and Google Tag Manager for campaign and conversion tracking.

Tech Lead

FreelanceRacquets App Suite(opens in new tab)·2022 – 2024

Tech lead for a racquet-sports platform (court booking and tournaments). I led both the React Native mobile app and the Node.js backend, coordinated a team of ~5 developers, and worked directly with the CEO to plan and implement new features. When I joined, the product had two modules (court booking and simple tournaments); I led the design and development of the tournaments and academy modules to scale it for broader use.

  • Led the React Native mobile app (Firebase Auth, Redux, Redux-Saga, redux-form) and shipped it to both the App Store and Google Play.
  • Maintained and contributed to the Node.js + Express backend on Heroku: REST API, Stripe payments, Firebase, and Zoho CRM integration.
  • WebSockets for live match scoring and booking confirmations, so every participant saw the same state without refreshing.
  • Coordinated a team of ~5 developers and worked directly with the CEO on the product roadmap and new features.
  • Designed and shipped the tournaments and academy modules to scale the app beyond its original court-booking and simple-tournament features.

Frontend Developer

Full-timeDeltax(opens in new tab)·Nov 2021 – May 2024

Second frontend (and fifth overall developer) to join a logistics startup focused on freight transport, connecting companies with drivers and trucks. Over 2.5 years I accompanied the company's growth from 5 to ~50 people, working on three successive products: FMS, TMS, and the marketplace connecting freight with fleets and trucks.

  • Led several technical migrations: React class → function components, React Router v4 → v6 with route-level lazy loading, and JavaScript → TypeScript in the main project.
  • React with Redux and Redux-Thunk, redux-form and Formik for forms, AWS Cognito for authentication, and Jest for tests.
  • Built dedicated software on top of the platform for use by freight providers.
  • Responsible for onboarding and training new developers joining the team.

In practice

Field notes

An adapter instead of a migration

Racquets App Suite · 2022

I joined to lead a racquet-sports suite already in production on Firebase. As complexity grew we decided to move to a relational database, and there were two paths: migrate every existing module, or write an adapter letting the old modules talk to the new database.

I chose the adapter. A full migration meant more time, more cost, and a real risk of breaking functionality already serving users. The adapter let the team build new modules on the right foundation from day one without freezing the product. The debt stayed bounded and visible — which is not the same as not having it.

Scraping the system we were replacing

Gaia del Sur · 2025–2026

Gaia ran on an in-house platform inherited from an earlier team: no documentation, no visibility into what it did with the business's own data, and nothing anyone could safely change. Replacing it was the easy call. Getting the data out was not — the catalog of 180,000+ titles only existed inside that system, with no export and no schema anyone could read.

Re-keying it was never real, and there was no trustworthy way into the database underneath. The one interface the old system still honored was its own: it could render every record on screen. So I wrote a Playwright scraper that walked the catalog the way a user would, and normalized what came back into the new PostgreSQL model. Scraping is usually a smell; here it was the cheapest honest way out of a system nobody could read. The point of the project was never new features — it was making the data legible to the business that owned it.

Discovering unknown hardware with AI

Q-minex · 2026

A batch of ASICs arrived in a model the system didn't support. We put them on the plant network and, with SSH access, I used AI to explore the machine: what firmware it ran, what APIs it exposed, what shape each endpoint returned. With that map we built the integration proposal, and I wrote the factory for the model so it could join the mining pipeline alongside the 111 active rigs.

The interesting part isn't that AI wrote code — it's that it compressed the slowest part, which was understanding a closed system we had no documentation for.

Background

Education

Bachelor's in Systems Engineering

2018 – 2023

In the final stage of my Systems Engineering degree, with the thesis project as the remaining requirement. I also volunteered at the university's student research society, contributing to projects and teaching web technologies to new members.

Languages

  • SpanishNative
  • EnglishIntermediate (B1)

Let's build

Let's talk

Open to tech lead and full stack roles. The fastest way to reach me is by email.