Senior Full-stack Engineer
BSc in Computer Engineering at Málaga University
Curriculum vitae generated from Markdown, for the latest version visit Rengel.me
Email: javier@rengel.me, javier@coconauts.net
Website: Coconauts.net, Rengel.me
LinkedIn: Javier Rengel
Twitter: rephus
Github: https://github.com/rephus
- Python, JS, Scala, Go, React, AWS, GCP, Docker, Kubernetes, Datadog, Redis, PostgreSQL
I joined Pashi as a technical leader, I was in charge of maintaining, updating, bugfixing the main codebase, while I was building a brand new interface and backend for extending the compatibility of the product with multiple production line types, using no-code principles. I built a no-code report engine to visualize the status of the production line in realtime. I introduced tests and CI. On my first day, I dockerized all the different Go services for everyone to run it locally.
As the worker with more seniority, I introduced good startup practices, to improve our efficiency as a team. I was continuously doing tech talks even for non technical coworkers, and writting documentation of all different components of the product.
- Technologies: Golang, VanillaJS, Docker, Postgres, Cypress
I joined Stacker as a full stack engineer at a very early stage, so we experienced some iterations in the product. It was a very challening and exciting product to work on, since the goal to allow non technical users to build their own apps was not an easy task; nor from the product point of view (no one has cracked the magic formula yet) or from a technical point of view. We had to design a very dynamic API that could not be tied to a specific schema or configuration, with several generic layers (like permissions or roles), as well as a data cache to keep it performant.
- Technologies: Google cloud, Kubernetes, React, Python Django, Celery, Postgres, Memcached, Cypress
- I was in charge of devops and architecture: deployed services using Kubernetes in GCP
- Advance service monitoring on Datadog
Lantum hired me as a contractor to design, maintain their python microservice architecture on Kubernetes in AWS. Eventually I started also making changes to the frontend code built in Angular.
- Technologies: AWS, Angular, Python, Kubernetes
- I was in charge of devops: I designed and maintained Kubernetes staging and prod clusters
Smart team of people with different approaches to work. We all worked really hard on doing a codebase refactor in 6 weeks, defining and creating from scratch all the existing platform features in new Django, Flask docker microservices. We then shifted to a squads-based structure, and I joined the one in charge of the billing process.
- Full microservices architecture using Docker and Rancher
- Input on important architectural decissions
- Backend mostly built in Python3, Django and Flask (and a bit of Scala) with PostgreSQL and Redis for persistence
- TDD and BDD
- Continuous integration using Jenkins and Travis
- Conducted software developer interviews
It was a small startup with a team of top-talent engineers, I had the chance to vastly improve my knowledge both in new technologies and good code practices.
- Backend microservices development in Scala
- Full custom CMS app built in Scala (Play Framework)
- CI with Jenkins
- Polyglot persistence with Cassandra, Memcached, ElasticSearch, Redis
- Heavy use of Amazon WS (DynamoDB, EC2, S3, SQS, SNS, etc)
While the codebase and project was not very flashy, I learned how it feels working in a large company with a large team and I also was introduced to agile (standups, code reviews)
- Web backend development for sportsbook sites in Tcl
- Troubleshooting, QA, optimization and code analysis for existing products
- Automation scripts in Bash and Expect in Jenkins.
- Release manager: in charge or the team's code merging, code deployment, and direct support towards clients
Asesores Locales was my first job as a developer. I started by learning some basics on JEE and web development, but fueled by my motivation, after the cuourse of my time there I ended up leading development of some projects, bringing new technology, and mentoring others (I was the official "innovator geek mind" in the company).
- JEE development in several projects, as part of teams and autonomously
- UI with IceFaces, Jboss Richfaces, ADF and Woodstock frameworks
- GIS system development in JEE using MapServer for custom street location service
- Devops: Installation, configuration and maintenance of IBM servers with Windows Server 2008 R2, CentOS and VMWare VSphere hypervisor 5.0
- Administration of Oracle, MySQL and PostgreSQL databases
- Application servers Glassfish v2/v3 and Oracle weblogic
- Product presentations (inside and outside the company)
- Manager role in some projects
- Very efficient developer, multi-tasker, right balance between speed and test coverage.
- Can-do attitude.
- Likes to have a good overview of the global architecture, from the backend to the frontend, including databases, APIs, DNS and servers.
- Special focus on performance: able to identify, find and fix bottlenecks.
- Enthusiast and curious: continously learning and trying new technologies and languages on my spare time
- Motivation to solve difficult problems and build complex features
- Extremely friendly person, excellent working with teams, as well as independently
I am constantly playing with technology in my spare time, including not only application development but also hardware projects and games. You can see my full portfolio on Coconauts.net, and Github.com/rephus but some of the highlights include
- My own podcast about development (in spanish)
- StarCraft Unity3D RTS template optimized for mobile, built in Unity3D inspired in StarCraft
- Retrophies, a web emulator of NES games with Achievements and multiplayer gameplay via websockets. and multiplayer gameplay with websockets, featured on Hackernews.
- Watchduino, a smartwatch based on Arduino with Bluetooth communication and companion app for Android. Finalist on the Hackaday Prize 2015.
- Casual mobile videogames released for Android platform since v1.6 android
- Gramola, a web-based music player written in Node.js