Go development
My main backend language for both professional and personal development.
Echo is my preferred framework for REST APIs.
I integrated various modules, external APIs and control middlewares. It’s my go-to as far as web development is concerned.
I have been using Gin as framework for REST APIs.
I integrated various authentication modules, external APIs and control middlewares.
I have been using SQLC for compile-safe, SQL level data access.
It’s my favorite data access tool at the moment.
I have been using Gorm for data access.
Don’t really like it to be honest.
I have been using Resty for APIs integration.
I have published a couple of Go modules in order to get a better understanding of the whole ecosystem, of the current processes and best practices.
I always try to give my projects a clean code, deep testing coverage, a good CI pipeline, exhaustive documentation and responsive support where needed.
A highly configurable, feature-packed, load-aware limiter for Go.
gin-goll
The middleware plugin for integrating a Goll load limiter in a Gin-gonic application.
I really like Go’s focus on testing. I always write deeply-tested code and follow strict dependency injection patterns.
Java development
Java has been my main backend language for 7+ years of professional development.
Java 11 is the latest version I have developed enterprise applications with.
(first one was Java 5).
Our choice for data access.
I have extensive experience with most of the module, including heavy usage of specifications and repository customization for data-access patterns enforcement.
Our choice for all things regarding security.
I have experience implementing a lot of different authentication and authorization strategies including custom non-standard ones.
I have experience with other modules such as AOP/aspects (used for logging and access control), JMS, Web, …
I’m currently working with WildFly as application servers.
I have experience with customizing application servers, configuring and debugging cluster configurations, creating JMS queues and replicated caches.
Angular development
My main language for all things frontend.
I’ve been developing in Angular for years in all contextes - enterprise, personal, hobbyst, nonprofit applications.
My most-recent experience developing in Angular for enteprise included version 11, but I’ve been using Angular since version 2 and have no problems upgrading.
Nowadays I design and develop Angular applications and work with my team performing code reviews and tutoring to enforce proper patterns and best practices.
I always work with Typescript when possible as I really like it and am convinced it’s a good solution for most of the javascript quirks.
I strongly believe in strict typization and aggressive linting so Typescript really fits for me.
I love RxJs and thinks it’s a part of frontend development too often overlooked.
I spend a good amount of time designing proper rxjs pipelines and have my team do the same.
Cloud Computing
Have good experience with various Cloud providers, the most on Azure.
deployed services in App Service in python and as containers running Go applications
serving all APIs for public and private applications via API management with rewrite, authentication and rate control features.
wrote Function applications as a quick way of providing submission APIs endpoints for public websites and job automations with Logic Apps.
currently using Azure managed databases for Postgres and MySQL
hosting a couple of static websites as static hosting
configured Azure CDN for faster serving of static websites and public assets
developed applications involved heavy usage of tranlsation APIs
heavily focused on security. Managed audit trails, key vaults and always following best practices.
serving applications as Docker containers and managing private Docker registries, including source-to-publishing pipeline.
messing around to get a solid understanding of the best principles for VPC designing, including best practices in subnets, routing, security/access control and endpoints provisioning.
integrated SQS and SNS for decopuling and messaging in some of my applications
some lambda function here and there
designed a complete VPC with a couple of subnets, provisioned self-hosted NAT and VPN with LDAP integration
using Oracle Cloud object storage (S3-compatible) as storage backend for my personal applications.
DevOps
Capable of setting up and configuring Jenkins instances, Actions and pipelines on Github and Gitlab.
Providing CI to projects with CircleCI, CodeClimante and Coveralls.
I’ve been using Jenkins for years in many different environments - for enterprise, small businesses and personal applications.
I have setup from scratch and configured everything for many instances.
I’ve been using Github actions for my personal projects for a while now, usually providing build/test/coverage integration with external services (CircleCI, CodeClimate and Coveralls mainly) and handling deploys.
Designed deployment flows to Azure App Services, Function/Logic apps, Container registries and public websites on static storage.
Used to rely on Gitlabe pipelines before switching to Github.
Mostly handling build/test and low-level deploys to test VPS via SFTP.
Setup from scratch and regularly using Artifactory as artifacts archive and personal maven repository for private modules.
Using it also in enteprise development (sporadically).
Monitoring
I’ve setup and am using Zabbix instances for a lot of different monitoring needs, from VPS status, to REST services, APIs health endpoints, external services.
I wrote and published a wrapper to allow detailed Cronjob monitoring with Zabbix.
I have some experience integrating services for log collection and error reporting.
The latest version I worked with is Zabbix 5.4
I wrote and published a wrapper to allow detailed Cronjob monitoring with Zabbix.
zabbix-cron-monitoringI wrote and published a REST APIs exposing delivery status for a local postfix instance
postfix-adapterI have a little experience with log collection using logstash or LogDNA service.
I have a little experience with error reporting, mainly by integrating Rollbar with my applications.
NodeJs
A moderate experience in NodeJs, developed some personal REST APIs using Loopback 4 framework.
The most recent version of Node I worked on is version 12.
I have a good experience with the Loopback framework (built on top of Express).
I wrote some REST APIs, some worker applications and a couple of microservices for IAM and content storage (S3-like but with multimedia processing).
Python
A moderate experience in NodeJs, developed some personal REST APIs using Loopback 4 framework.
I worked on python from versions 2.7 to 3.9.
I wrote and published a couple packages to the PyPi registry.
py-load-limiterA highly configurable, feature-packed, variable-request-sized load limiter python module.
postfix-adapter
Django-based application that exposes a local postfix mail delivery status as REST API.
I have a little experience with Django framework, but only at personal level.