Technologies

πŸ› οΈ Technical Stack

Throughout my career, I have developed expertise in various technologies and tools. Here’s an overview of the main technologies I master:

πŸ’» Programming Languages

β˜• Java

Main language used in backend development, especially in enterprise projects and financial systems.

Frameworks and Libraries:

  • Spring Boot
  • Spring Security
  • Spring Data JPA
  • Micronaut
  • JUnit

🎯 Kotlin

Used for both Android development and backend, especially in projects requiring interoperability with Java.

Applications:

  • Native Android development
  • REST APIs with Micronaut
  • Microservices
  • Automation scripts

🐹 Go (Golang)

Language currently used at Mercado Libre for developing high-performance services.

Features I appreciate:

  • Exceptional performance
  • Simplicity and clarity
  • Excellent for microservices
  • Native concurrency

🌐 JavaScript/TypeScript

Used mainly for frontend development and some automation.

Related Technologies:

  • React.js
  • Node.js
  • TypeScript
  • HTML5/CSS3

πŸ—οΈ Backend Frameworks and Technologies

πŸƒ Spring Boot

Main framework for developing REST APIs and microservices in Java.

Modules Used:

  • Spring Web
  • Spring Security
  • Spring Data JPA
  • Spring Cloud
  • Spring Actuator

⚑ Micronaut

Modern framework for developing microservices with focus on performance and low memory consumption.

Advantages:

  • Reduced startup time
  • Low memory consumption
  • Ahead-of-time compilation
  • Compile-time dependency injection

πŸ“± Mobile Development

πŸ€– Android

Development of native Android applications using Java and Kotlin.

Technologies:

  • Android SDK
  • Jetpack Components
  • Room Database
  • Retrofit
  • Koin (Dependency Injection)

☁️ Cloud Computing

☁️ Amazon Web Services (AWS)

Experience with various AWS services for developing scalable solutions.

Services Used:

  • Compute: EC2, Fargate
  • Storage: S3, EBS
  • Database: RDS, DynamoDB
  • Messaging: SQS, SNS
  • Monitoring: CloudWatch
  • Security: Parameter Store, IAM
  • DevOps: CodeDeploy, CodePipeline
  • Container: ECR, ECS

🐳 DevOps and Containerization

βš™οΈ GitHub Actions

CI/CD automation platform for building, testing, and deploying applications.

Usage:

  • Automated testing on pull requests
  • Continuous integration pipelines
  • Automated deployment workflows
  • Docker image building and publishing
  • Multi-environment deployments
  • Security scanning and code quality checks

🐳 Docker

Application containerization for development, testing, and production.

Usage:

  • Creating optimized images
  • Docker Compose for local environments
  • Multi-stage builds
  • Layer optimization

βš“ Kubernetes

Container orchestration in production environment.

Resources Used:

  • Deployments and Services
  • ConfigMaps and Secrets
  • Ingress Controllers
  • Horizontal Pod Autoscaler
  • Monitoring and Logging

πŸ—„οΈ Databases

🐘 PostgreSQL

Main relational database used in most projects.


πŸƒ MongoDB

NoSQL database used for specific cases requiring schema flexibility.


⚑ Redis

Used for cache, sessions, and message queues.


πŸš€ DynamoDB

AWS NoSQL database used in projects requiring high scalability.


πŸ“Š Monitoring and Observability

πŸ“ˆ New Relic

Application Performance Monitoring (APM).


πŸ• DataDog

Monitoring and analytics platform used at Mercado Libre.


πŸ” Kibana

Elasticsearch logs and metrics visualization.


☁️ CloudWatch

AWS resource monitoring and custom metrics.


πŸ“Š Prometheus

Monitoring and metrics platform used at Mercado Libre.


πŸ“Š Grafana

Monitoring and metrics visualization platform used at Mercado Libre.


πŸ”„ Messaging and Streaming

πŸš€ Apache Kafka

Streaming platform for real-time event processing.

Usage:

  • Event-driven architecture
  • Microservices communication
  • Real-time data processing
  • Message queuing

πŸ› οΈ Development Tools

πŸ’» IDEs

  • IntelliJ IDEA - Main IDE for Java/Kotlin development
  • GoLand - For Go development
  • Visual Studio Code - For web development and scripts
  • Android Studio - For Android development

πŸ”§ Build Tools

  • Maven - Java dependency management
  • Gradle - Build automation (Android and some Java projects)
  • Go Modules - Go dependency management

πŸ“ Version Control

  • Git - Distributed version control
  • GitHub - Repository hosting
  • GitLab - CI/CD and corporate repositories

πŸ“š Methodologies and Practices

πŸ§ͺ Testing

  • TDD (Test-Driven Development)
  • Unit Testing (JUnit, Mockito, Go testing)
  • Integration Testing
  • Instrumented Testing (Android)

πŸ—οΈ Architecture

  • Microservices Architecture
  • Clean Architecture
  • Domain-Driven Design (DDD)
  • Event-Driven Architecture
  • RESTful APIs

πŸ”„ DevOps

  • CI/CD Pipelines

“The best technology is the one that solves the problem simply and efficiently.”