Skip to content
View JoelTeoGom's full-sized avatar
♟️
Learning
♟️
Learning

Block or report JoelTeoGom

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
JoelTeoGom/README.md
Joel Teodoro

Backend Engineer · Spain 🇪🇸


Typing SVG



Gmail     LinkedIn     Portfolio


$ whoami

package main

import "fmt"

type Developer struct {
    Name      string
    Role      string
    Location  string
    Languages []string
    Interests []string
}

func (d Developer) String() string {
    return fmt.Sprintf("%s — %s from %s", d.Name, d.Role, d.Location)
}

func (d Developer) CurrentlyLearning() string {
    return "Always something new in distributed systems"
}

func main() {
    me := Developer{
        Name:      "Joel Teodoro",
        Role:      "Backend Engineer",
        Location:  "Spain 🇪🇸",
        Languages: []string{"Go", "Java", "Python", "C"},
        Interests: []string{
            "Scalable microservices",
            "Event-driven architectures",
            "Making things faster",
            "Breaking things to understand them",
        },
    }

    fmt.Println(me)
    // Output: Joel Teodoro — Backend Engineer from Spain 🇪🇸
}

$ cat stack.yml

backend:
  primary:
    - go          # current obsession
    - java        # spring boot ecosystem
  secondary:
    - python      # scripting & automation
    - c           # when i need to go low-level

frameworks:
  - spring-boot   # enterprise stuff
  - gin           # fast & lightweight
  - grpc          # service communication

infrastructure:
  containers: [docker, kubernetes]
  messaging:  [kafka, rabbitmq]
  databases:  [postgresql, redis, mongodb]

practices:
  - clean-architecture
  - domain-driven-design
  - event-sourcing
  - test-driven-development

$ ps aux | grep focus

@@ current focus @@

+ Building microservices with Go — obsessed with performance & simplicity
+ Deep diving into Kafka internals — event streaming is beautiful
+ Kubernetes patterns — making deployments boring (in a good way)
+ System design — preparing for scale before it's needed

@@ actively avoiding @@

- Premature optimization (learning to resist)
- Writing code without tests (never again)

$ tree ~/projects --favorites

>_ CLI Tools

Small tools that solve real problems

Building utilities that automate the boring stuff. If I do something twice, it becomes a script. If I do it three times, it becomes a tool.

{ } Distributed Systems

Learning by building

Experimenting with consensus algorithms, event sourcing, and everything that can go wrong in distributed environments (spoiler: everything).

/api Backend APIs

REST, gRPC, GraphQL

Designing APIs that developers actually enjoy using. Documentation included, because past me hates undocumented APIs.

./lab Playground

Where ideas go to be tested

Random experiments, proof of concepts, and "what if I try this?" projects. Most fail, some become real tools.


$ curl -s api.joel.dev/links

{
  "email": "joel.teodoro.software@gmail.com",
  "linkedin": "linkedin.com/in/joel-teodoro-gomez",
  "portfolio": "joelteogom.github.io",
  "status": "open to interesting conversations"
}

$ git log --stat


// TODO: write better commit messages

Pinned Loading

  1. htmx-golang-ecommerce htmx-golang-ecommerce Public

    This project is a simple e-commerce application developed in Go (Golang) using HTMX for frontend interactivity. The project includes basic features such as product management, shopping cart, user a…

    HTML 2

  2. easycab easycab Public

    EasyCab is a distributed system that simulates an autonomous taxi service. It manages real-time communication between taxis, sensors, customers, and a central control server. The project integrates…

    Java 1

  3. calculator-interpreter calculator-interpreter Public

    This project implements a simple, dynamically-typed programming language with support for basic arithmetic operations, variable assignments, control structures, and print statements. The interprete…

    Python

  4. FullStack-app FullStack-app Public

    This project is a full stack application that uses React for the frontend, Node.js and Express for the backend, and Postgres as the database, all running in a Docker container. Additionally, Stripe…

    JavaScript

  5. carlosmgv02/ACPrac2 carlosmgv02/ACPrac2 Public

    C