I'm a software developer always pursuing excellence in my work and personal projects.
With a passion for technology from a young age, I began my journey in software development several years ago. Over time, I gained experience in various areas, including front-end, back-end, mobile, desktop, and DevOps.
I am always seeking new challenges and opportunities to learn and grow as a professional. If you are looking for a dedicated and passionate developer to be part of your next project, I would love to chat!
2020 - 2022
Mid-Level Developer
I worked as a Mid-Level Fullstack and DevOps developer on freelance projects focused on e-commerce.
2023 - 2025
Senior Developer
I worked as a senior developer at a company in the digital sales field, leading the complete development of projects.
2025 - Now
Mid-Level Developer
Currently, I work as a Fullstack and DevOps developer, at Mid-Level as I saw an opportunity for professional growth.
[
{
"name": "Vue.js",
"startAt": "2023-01-01",
"description": "I’ve been using Vue.js since 2023 to build dynamic, accessible, modern, and reusable UIs.",
"knowledges": [
"Build components with Vue 3 and Composition API",
"State management with Pinia",
"Routing with Vue Router",
"Consuming RESTful and GraphQL APIs",
"Performance and SEO optimizations",
"Integration with build tools like Vite and Webpack"
]
},
{
"name": "React.js",
"startAt": "2019-01-01",
"description": "I build reactive interfaces with React, prioritizing componentization, accessibility, and performance.",
"knowledges": [
"Hooks and Context API",
"Functional components and composition patterns",
"React Router and navigation",
"Integration with REST and GraphQL APIs",
"Code splitting and lazy loading",
"Unit tests with Jest and Testing Library"
]
},
{
"name": "Node.js",
"startAt": "2019-01-01",
"description": "I create scalable services with Node.js, leveraging the event loop efficiently.",
"knowledges": [
"ESM/CJS, npm/pnpm, and scripts",
"Streams, buffers, and filesystem",
"Cluster, workers, and performance",
"Env vars and environment config",
"Security best practices",
"Observability and structured logs"
]
},
{
"name": "NestJS",
"startAt": "2021-01-01",
"description": "I build scalable, modular APIs with NestJS and dependency injection.",
"knowledges": [
"Modules, controllers, and providers",
"Pipes, Guards, and Interceptors",
"Validation with class‑validator",
"Swagger/OpenAPI and docs",
"Authentication and authorization",
"Testing and clean architecture"
]
},
{
"name": "Golang",
"startAt": "2025-05-01",
"description": "I develop performant, concurrent services with Go.",
"knowledges": [
"Goroutines and channels",
"HTTP servers and REST APIs",
"Structs, interfaces, and errors",
"Tests, benchmarks, and profiles",
"Modules, dependencies, and build",
"CLI tooling and automation"
]
},
{
"name": "Rust",
"startAt": "2024-01-01",
"description": "I build safe and efficient software with Rust, focusing on zero‑cost abstractions.",
"knowledges": [
"Ownership and borrowing",
"Traits, generics, and lifetimes",
"Async/await and ecosystem (Tokio)",
"Error handling (Result, anyhow)",
"Cargo, workspaces, and crates",
"Testing and documentation"
]
},
{
"name": "Nuxt.js",
"startAt": "2023-01-01",
"description": "I build full‑stack Vue apps with Nuxt, leveraging SSR/SSG, routing, and data composition.",
"knowledges": [
"SSR, SSG, and dynamic routes",
"Composables and auto‑imports",
"Nuxt Image and asset optimizations",
"Internationalization",
"Meta tags and SEO with definePageMeta",
"Static and serverless deployment"
]
},
{
"name": "Next.js",
"startAt": "2019-01-01",
"description": "I develop React apps with Next.js, leveraging the App Router, SSR/SSG, and image optimizations.",
"knowledges": [
"App Router and Server Components",
"SSR, SSG, and ISR",
"API Routes and Edge Functions",
"next/image and performance optimizations",
"Internationalization and middlewares",
"Integration with Tailwind and CSS‑in‑JS"
]
},
{
"name": "Vite",
"startAt": "2019-01-01",
"description": "I set up fast dev environments with Vite, with HMR and optimized builds.",
"knowledges": [
"Plugins and alias configuration",
"Code splitting and build optimizations",
"Ambient types and env variables",
"Preprocessors (Sass, PostCSS)",
"Preview and bundle analysis",
"Integration with Vue, React, and SSG"
]
},
{
"name": "Tailwind",
"startAt": "2020-01-01",
"description": "I style interfaces with Tailwind CSS productively and consistently, following design tokens.",
"knowledges": [
"Theme configuration and design system",
"Componentization and utility variables",
"Dark mode and accessibility",
"Plugins and directives (apply, variant)",
"Responsive design and advanced grid/flex",
"Performance and unused class removal"
]
},
{
"name": "Styled Components",
"startAt": "2019-01-01",
"description": "I use Styled Components for CSS‑in‑JS with theming, componentization, and TypeScript typing.",
"knowledges": [
"Themes and ThemeProvider",
"Typed props and dynamic styles",
"GlobalStyle and CSS reset",
"Conditional styling and variants",
"Animations and keyframes",
"SSR integration (Next.js)"
]
},
{
"name": "Sass",
"startAt": "2019-01-01",
"description": "I organize scalable styles with Sass using variables, mixins, and modules.",
"knowledges": [
"Variables, mixins, and functions",
"Modular architecture and partials",
"BEM strategies and utilities",
"Controlled nesting",
"Integration with Vite and Webpack",
"CSS optimization and maintenance"
]
},
{
"name": "Redux",
"startAt": "2019-01-01",
"description": "I manage predictable global state with Redux and Redux Toolkit.",
"knowledges": [
"Store, reducers, and slices",
"Redux Toolkit and RTK Query",
"Middlewares and side effects",
"State normalization",
"Integration with React and TypeScript",
"DevTools and best practices"
]
},
{
"name": "Java",
"startAt": "2017-01-01",
"description": "I build robust backends with Java, OO principles, and best practices.",
"knowledges": [
"Collections, Streams, and Lambdas",
"Concurrency and parallelism",
"REST APIs and JSON serialization",
"Error handling and logging",
"Build with Maven/Gradle",
"Unit and integration tests"
]
},
{
"name": "Express.js",
"startAt": "2019-01-01",
"description": "I develop simple and effective REST APIs with Express.js.",
"knowledges": [
"Routes, middlewares, and errors",
"Validation and sanitization",
"CORS, rate limit, and security",
"Templates and static assets",
"Scalable project structure",
"Tests and continuous integration"
]
},
{
"name": "Fastify",
"startAt": "2022-01-01",
"description": "I build fast and secure APIs with Fastify and schema‑based validation.",
"knowledges": [
"JSON schemas and serialization",
"Plugins and hooks",
"Encapsulation and scope",
"Observability and logs",
"Rate limiting and security",
"TypeScript integration"
]
},
{
"name": "Microservices",
"startAt": "2022-01-01",
"description": "I design and operate microservices architectures with resilience and observability.",
"knowledges": [
"Communication (HTTP, gRPC, queues)",
"Discovery, configuration, and registry",
"Saga patterns and orchestration",
"Circuit breaker and retries",
"Tracing, metrics, and logs",
"Versioning and independent deploys"
]
},
{
"name": "WebSocket",
"startAt": "2020-01-01",
"description": "I implement real‑time communication with WebSocket for reactive apps.",
"knowledges": [
"Connections, rooms, and broadcasts",
"Reconnection and fault tolerance",
"Scaling with adapters",
"Token‑based authentication",
"Binary and text messages",
"Monitoring and metrics"
]
},
{
"name": "Socket.IO",
"startAt": "2020-01-01",
"description": "I build real‑time features with Socket.IO on clients and servers.",
"knowledges": [
"Namespaces and rooms",
"Middlewares and authentication",
"Acks and events",
"Redis adapter and scalability",
"Reconnection and backoff",
"Session sharing"
]
},
{
"name": "GraphQL",
"startAt": "2023-01-01",
"description": "I model GraphQL schemas and resolvers for efficient, typed queries.",
"knowledges": [
"Schemas, queries, mutations, and subscriptions",
"Resolvers and data loaders",
"Pagination and filters",
"Persistence and caching",
"Federation and modularization",
"Security and authorization"
]
},
{
"name": "TDD",
"startAt": "2023-01-01",
"description": "I practice TDD to deliver testable, simple, and reliable code.",
"knowledges": [
"Unit, integration, and end‑to‑end tests",
"Mocks, stubs, and spies",
"Coverage and quality metrics",
"Pyramid/hexagonal testing",
"CI/CD with automated tests",
"Safe, incremental refactoring"
]
},
{
"name": "Typescript",
"startAt": "2020-01-01",
"description": "I write robust code with TypeScript, using advanced typing.",
"knowledges": [
"Types, interfaces, and generics",
"Utility types and narrowings",
"Declarations and ambient types",
"Tsconfig and path configs",
"Strict mode and best practices",
"Integration with bundlers and frameworks"
]
},
{
"name": "Javascript",
"startAt": "2019-01-01",
"description": "I master modern JavaScript (ES6+) for front‑end and back‑end.",
"knowledges": [
"Async/await and Promises",
"Closures and scope",
"Prototyping and classes",
"Array and object manipulation",
"Modules and bundlers",
"DOM APIs and events"
]
},
{
"name": "JWT",
"startAt": "2020-01-01",
"description": "I implement stateless auth with JWT securely and at scale.",
"knowledges": [
"Signing and verification (HS/RS)",
"Refresh tokens and rotation",
"Blacklist/whitelist and expiration",
"JWKs and discovery",
"Scopes and authorization",
"Best practices and risk mitigation"
]
},
{
"name": "TypeORM",
"startAt": "2022-01-01",
"description": "I model domains and persistence with TypeORM and repository patterns.",
"knowledges": [
"Entities, migrations, and seeds",
"Relations and cascades",
"QueryBuilder and optimizations",
"Transactions and locks",
"Cache and loading strategies",
"Integration with NestJS"
]
},
{
"name": "Sequelize",
"startAt": "2021-01-01",
"description": "I use Sequelize as ORM in Node.js with multi‑DB support.",
"knowledges": [
"Models, migrations, and seeds",
"Associations and scopes",
"Hooks and validations",
"Transactions and concurrency",
"Raw queries and optimization",
"Typing with TypeScript"
]
},
{
"name": "Prisma",
"startAt": "2023-01-01",
"description": "I build fast, typed data layers with Prisma ORM.",
"knowledges": [
"schema.prisma and migrations",
"Typed client and relations",
"Seeds and validation",
"Pagination and performance",
"Middlewares and extensions",
"Integration with Nest/Next"
]
},
{
"name": "Swagger",
"startAt": "2024-01-01",
"description": "I document APIs with OpenAPI/Swagger, ensuring clarity and standardization.",
"knowledges": [
"OpenAPI specification",
"Schemas and examples",
"Authentication and security",
"Client/SDK generation",
"Framework integration",
"Publishing and versioning"
]
},
{
"name": "Apache Kafka",
"startAt": "2024-01-01",
"description": "I design event pipelines with Kafka for high throughput and resilience.",
"knowledges": [
"Topics, partitions, and offsets",
"Producers and consumers",
"Consumer groups and rebalancing",
"Compaction and retention",
"Schema Registry and compatibility",
"Observability and tuning"
]
},
{
"name": "RabbitMQ",
"startAt": "2024-01-01",
"description": "I integrate systems with reliable messaging via RabbitMQ.",
"knowledges": [
"Exchanges, queues, and bindings",
"Routing keys and patterns",
"Acknowledgements and retries",
"Dead‑letter and priorities",
"Security and TLS",
"Scalability and clusters"
]
},
{
"name": "PostgreSQL",
"startAt": "2022-01-01",
"description": "I model relational data with PostgreSQL with a focus on performance.",
"knowledges": [
"Modeling and normalization",
"Indexes and execution plans",
"CTEs, window functions, and JSONB",
"Transactions and locks",
"Backups and replication",
"Extensions (PostGIS, etc.)"
]
},
{
"name": "MySQL",
"startAt": "2021-01-01",
"description": "I design MySQL schemas with efficient, reliable queries.",
"knowledges": [
"Relational modeling",
"Indexes and query optimization",
"Transactions and isolation",
"Stored procedures and views",
"Backup and restore",
"Monitoring and tuning"
]
},
{
"name": "MongoDB",
"startAt": "2023-01-01",
"description": "I work with MongoDB for flexible data and aggregation queries.",
"knowledges": [
"Document modeling",
"Aggregation pipeline",
"Indexes and TTL",
"Transactions and consistency",
"Sharding and replication",
"Schema best practices"
]
},
{
"name": "CassandraDB",
"startAt": "2023-01-01",
"description": "I design scalable wide‑column models with Cassandra.",
"knowledges": [
"CQL and key‑based partitioning",
"Consistency and replication",
"Query‑driven modeling",
"Compaction and TTL",
"Clusters and datacenters",
"Operations and monitoring"
]
},
{
"name": "Redis",
"startAt": "2022-01-01",
"description": "I use Redis for cache, queues, and in‑memory data structures.",
"knowledges": [
"Types (strings, hashes, sets, zsets)",
"TTL, expiration, and eviction",
"Pub/Sub and streams",
"Pipelines and Lua scripts",
"Cluster and replication",
"Locks and rate limiting"
]
},
{
"name": "Firebase",
"startAt": "2025-01-01",
"description": "I integrate Firebase services for web and mobile apps quickly.",
"knowledges": [
"Auth, Firestore, and Storage",
"Cloud Functions and triggers",
"Hosting and CDN",
"Messaging/FCM",
"Security rules",
"Monitoring and analytics"
]
},
{
"name": "Docker",
"startAt": "2023-01-01",
"description": "I containerize applications with Docker for consistent deliveries.",
"knowledges": [
"Dockerfiles and multi‑stage builds",
"Images, layers, and caching",
"Volumes and networks",
"Security best practices",
"Compose for development",
"Publishing and registries"
]
},
{
"name": "Kubernetes",
"startAt": "2024-01-01",
"description": "I orchestrate apps at scale with Kubernetes and cloud‑native practices.",
"knowledges": [
"Deployments, Services, and Ingress",
"ConfigMaps and Secrets",
"Autoscaling and health checks",
"RBAC and security",
"Helm and GitOps",
"Observability (logs/metrics)"
]
},
{
"name": "Linux",
"startAt": "2023-01-01",
"description": "I administer Linux environments with a focus on automation and security.",
"knowledges": [
"Shell, permissions, and processes",
"systemd, services, and logs",
"Networking, firewall, and sockets",
"Monitoring tools",
"Automation with scripts",
"Packaging and builds"
]
},
{
"name": "Nginx",
"startAt": "2022-01-01",
"description": "I configure Nginx as a reverse proxy, load balancer, and static server.",
"knowledges": [
"Reverse proxy and upstreams",
"TLS, HTTP/2, and security",
"Caching, compression, and headers",
"Rewrite rules",
"Load balancing",
"Observability and status"
]
},
{
"name": "Git",
"startAt": "2017-01-01",
"description": "I version code with Git using efficient, collaborative flows.",
"knowledges": [
"Branching strategies (GitFlow, Trunk)",
"Rebase, merge, and cherry‑pick",
"Tags, releases, and changelog",
"Bisect and troubleshooting",
"Hooks and automations",
"Submodules and monorepos"
]
},
{
"name": "GitHub",
"startAt": "2017-01-01",
"description": "I organize projects on GitHub with PRs, issues, and automations.",
"knowledges": [
"Pull Requests and code reviews",
"Projects/Boards and Issues",
"Actions and workflows",
"Releases and versioning",
"Templates and policies",
"Security and Dependabot"
]
},
{
"name": "GitLab",
"startAt": "2024-01-01",
"description": "I use GitLab for CI/CD, code, and packages management.",
"knowledges": [
"Merge Requests and reviews",
"Pipelines and runners",
"Registry and packages",
"Issues and milestones",
"Templates and automations",
"Integrations and security"
]
},
{
"name": "GitHub Actions",
"startAt": "2022-01-01",
"description": "I automate pipelines with GitHub Actions and build matrices.",
"knowledges": [
"Workflows, jobs, and steps",
"Runners and caching strategies",
"Secrets and environments",
"Matrices and conditionals",
"Publishing and deploy",
"Custom actions"
]
},
{
"name": "CircleCI",
"description": "I build efficient pipelines in CircleCI with orbs and parallelism.",
"knowledges": [
"YAML configuration",
"Caches and workspaces",
"Orbs and reuse",
"Parallelism and test splitting",
"Contexts and secrets",
"Deploys and notifications"
]
},
{
"name": "Jenkins",
"startAt": "2024-01-01",
"description": "I orchestrate builds with Jenkins and declarative pipelines.",
"knowledges": [
"Pipelines and stages",
"Agents, nodes, and labels",
"Essential plugins",
"Credentials and security",
"Triggers and webhooks",
"Infra as code (JCasC)"
]
},
{
"name": "DeployHQ",
"description": "I automate deploys with DeployHQ integrating repos and servers.",
"knowledges": [
"Deploy pipelines",
"GitHub/GitLab integration",
"Environments and variables",
"Logs and audit",
"Notifications",
"Rollback and history"
]
},
{
"name": "Docker Hub",
"startAt": "2024-01-01",
"description": "I manage images on Docker Hub with versioning and automations.",
"knowledges": [
"Public/private repositories",
"Tags and versioning",
"Automated builds",
"Vulnerability scanning",
"Organizations and teams",
"Tokens and permissions"
]
},
{
"name": "Docker Compose",
"startAt": "2023-01-01",
"description": "I define multi‑service environments with Docker Compose for dev and testing.",
"knowledges": [
"Services, networks, and volumes",
"Profiles and overrides",
"Dependencies and healthchecks",
"Variables and env files",
"Bind mounts and hot reload",
"Local orchestration"
]
},
{
"name": "Docker Swarm",
"startAt": "2024-01-01",
"description": "I orchestrate small clusters with Docker Swarm for simple setups.",
"knowledges": [
"Stacks and services",
"Scaling and updates",
"Secrets and configs",
"Networks and ingress",
"Volumes and persistence",
"Basic observability"
]
},
{
"name": "Helm",
"startAt": "2024-01-01",
"description": "I package and version Kubernetes deploys with Helm and reusable charts.",
"knowledges": [
"Charts, templates, and values",
"Releases and rollbacks",
"Repos and dependencies",
"Schemas and validations",
"Structure patterns",
"CI automation"
]
},
{
"name": "Terraform",
"startAt": "2024-01-01",
"description": "I provision infrastructure as code with Terraform safely.",
"knowledges": [
"Providers and resources",
"Modules and reuse",
"State and workspaces",
"Plan, apply, and destroy",
"Remote backends",
"Pipeline integration"
]
},
{
"name": "Prometheus",
"startAt": "2024-01-01",
"description": "I collect and query metrics with Prometheus and PromQL.",
"knowledges": [
"Scraping and targets",
"Exporters and instrumentation",
"Alertmanager and rules",
"PromQL and recording",
"Retention and storage",
"Grafana integration"
]
},
{
"name": "Grafana",
"startAt": "2024-01-01",
"description": "I create dashboards and alerts with Grafana across multiple sources.",
"knowledges": [
"Datasources (Prometheus, Loki, etc.)",
"Panels and visualizations",
"Variables and templates",
"Alerts and notifications",
"Permissions and folders",
"Explore and drill‑down"
]
},
{
"name": "SonarQube",
"startAt": "2024-01-01",
"description": "I monitor code quality with SonarQube and quality gates.",
"knowledges": [
"Static analysis and rules",
"Coverage and reports",
"PR decoration",
"Quality gate",
"Plugins and languages",
"CI integration"
]
},
{
"name": "Traefik",
"startAt": "2024-01-01",
"description": "I manage dynamic routing with Traefik and automatic certificates.",
"knowledges": [
"Providers and discovery",
"Middlewares and policies",
"Ingress/IngressRoute",
"Let’s Encrypt and TLS",
"Dashboards and metrics",
"Docker/K8s integration"
]
},
{
"name": "HashiCorp Vault",
"startAt": "2024-01-01",
"description": "I protect secrets with Vault, using policies and dynamic secrets.",
"knowledges": [
"Auth methods and policies",
"KV and secret engines",
"Transit and encryption",
"Leases and rotation",
"AppRole and tokens",
"App/CI integration"
]
},
{
"name": "AWS",
"startAt": "2024-01-01",
"description": "I build on AWS with security and cost‑efficiency in mind.",
"knowledges": [
"IAM and policies",
"EC2, ECS, and Lambda",
"S3, CloudFront, and Route 53",
"VPC, subnets, and security",
"CloudWatch and logs",
"Infra as code (Terraform)"
]
},
{
"name": "Azure",
"startAt": "2024-01-01",
"description": "I develop and operate workloads on Azure following best practices.",
"knowledges": [
"Resource Groups and RBAC",
"App Service and Functions",
"Storage and CDN",
"Azure DevOps/Pipelines",
"Monitor and Application Insights",
"Networking and security"
]
},
{
"name": "Cloudflare",
"startAt": "2022-01-01",
"description": "I optimize content delivery with Cloudflare and network protections.",
"knowledges": [
"DNS and CDN",
"SSL/TLS and certificates",
"Rules and caching",
"Workers and Pages",
"Firewall and rate limit",
"Analytics and monitoring"
]
},
{
"name": "S3",
"startAt": "2024-01-01",
"description": "I store and distribute objects on S3 with access control.",
"knowledges": [
"Buckets and policies",
"Lifecycle and versioning",
"Encryption and KMS",
"Pre‑signed URLs",
"Static website hosting",
"Costs and storage classes"
]
},
{
"name": "SQS",
"startAt": "2024-01-01",
"description": "I decouple services with SQS ensuring resilience.",
"knowledges": [
"Standard vs FIFO queues",
"Visibility timeout and redelivery",
"Dead‑letter queues",
"Batching and throughput",
"Policies and permissions",
"Lambda integration"
]
},
{
"name": "Lambda",
"startAt": "2024-01-01",
"description": "I run serverless code with AWS Lambda with performance best practices.",
"knowledges": [
"Handlers and layers",
"Triggers (API Gateway, S3, SQS)",
"Concurrency and cold start",
"Observability (logs/metrics)",
"Security and VPC",
"Deploy and versioning"
]
},
{
"name": "MinIO",
"startAt": "2024-01-01",
"description": "I host S3‑compatible storage using MinIO in owned environments.",
"knowledges": [
"Buckets and policies",
"Users and keys",
"Gateway and federations",
"Replication and erasure coding",
"Monitoring and logs",
"Integration with S3 SDKs"
]
},
{
"name": "Kotlin",
"startAt": "2024-01-01",
"description": "I develop with Kotlin using coroutines and JVM interop.",
"knowledges": [
"Null‑safety and data classes",
"Extensions and higher‑order functions",
"Coroutines and flows",
"DSLs and builders",
"Java interop",
"Testing and linting"
]
},
{
"name": "Android",
"startAt": "2024-01-01",
"description": "I build Android apps with a focus on architecture and UX.",
"knowledges": [
"Lifecycle and navigation",
"Permissions and security",
"ViewModel and persistence",
"Networking and caching",
"Responsive layouts",
"Testing and instrumentation"
]
},
{
"name": "Flutter",
"startAt": "2024-01-01",
"description": "I develop multi‑platform UIs with Flutter with high performance.",
"knowledges": [
"Widgets and responsive layouts",
"State management",
"Navigation and routes",
"Native integration",
"Internationalization",
"Build and distribution"
]
},
{
"name": "Tauri",
"startAt": "2023-01-01",
"description": "I build lightweight desktop apps with Tauri combining web and Rust.",
"knowledges": [
"Commands and Rust bridge",
"FS, window, and dialog APIs",
"Security (CSP and isolation)",
"Updater and signing",
"Multi‑OS packaging",
"Integration with React/Vue"
]
},
{
"name": "ESLint",
"startAt": "2020-01-01",
"description": "I standardize code with ESLint, rules, and CI integration.",
"knowledges": [
"Configs and parsers",
"Plugins and extends",
"Custom rules",
"Auto‑fix and warnings",
"Prettier integration",
"Pipeline checks"
]
},
{
"name": "Jest",
"startAt": "2023-01-01",
"description": "I write reliable tests with Jest and coverage reports.",
"knowledges": [
"Test runner and assertions",
"Mocks and spies",
"Snapshots and timers",
"Setup/teardown and environments",
"Coverage and reports",
"TS/Node integration"
]
}
]
SKILLS
My Expertise
Here are some of the skills and technologies I excel in.
PROJECTS
My Work
Here are some of the projects I've worked on recently.