Engineering Notebook Last updated
Portrait of Sergio Ballesteros
Sergio Ballesteros Backend Engineer

I build production systems.

Backend · Data · Artificial Intelligence

Current Mission

Operating backend, data and AI systems for commercial workflows in the energy sector.

Systems in Production

Systems I have to keep useful after deployment, not just finish once.

Case 001

OCM Brain

Service-backed AI layer for lead scoring, consent checks and sales-facing insight generation.

In production Version 1.8
Mission

Run commercial scoring and decision support inside stable backend workflows.

Current Stack
Evidence Count
Notebook Notes
    Featured system dossier Open engineering notes

    Engineering Decisions

    Why these systems were built this way, and what that choice bought in operation.

    Decision 01

    Why Spring Boot?

    Context
    Long-lived services needed predictable structure once they moved beyond the first delivery cycle.
    Decision
    Standardize core backend services on Spring Boot so service contracts, testing and operations stay consistent.
    Tradeoffs
    Heavier than minimal frameworks, but cheaper to own once the service becomes a real dependency.
    Decision 02

    Why PostgreSQL?

    Problem
    Reporting, workflow state and relational data were all part of the same operational surface.
    Decision
    Use PostgreSQL where transactions, ad hoc querying and clean relational modeling matter at the same time.
    Result
    Fewer compromises between business workflows and operational reporting.
    Decision 03

    Why Kubernetes?

    Context
    Several services had to be deployed, rolled back and observed in a repeatable way.
    Decision
    Run production services in Kubernetes so runtime behavior stops depending on one-off environment handling.
    Tradeoffs
    More platform complexity up front, less deployment ambiguity later.
    Decision 04

    Why OpenAI instead of local models?

    Problem
    Business workflows needed usable language capability before local-model ops were worth the cost.
    Decision
    Use hosted models where delivery speed, output quality and operational fit mattered more than ownership of the inference stack.
    Tradeoffs
    External dependency, but a faster path to production behavior that people could actually use.

    Evidence Trail

    Architecture, merge requests, deployment and monitoring as one engineering lifecycle.

    01 Architecture

    System shape first

    Define service boundaries, data ownership and failure paths before implementation starts.

    • Inputs and outputs defined per service.
    • Async work split from synchronous user flows.
    • Storage chosen around operational queries.
    02 Merge Request

    Intent written down

    Every change should explain what moved, why it moved and what operational risk it changes.

    • Scope reduced to one production concern at a time.
    • Tradeoffs captured near the implementation.
    • Review driven by runtime impact, not just style.
    03 Deployment

    Release as a controlled step

    Containers, environment boundaries and rollout behavior are treated as part of the feature.

    • Docker image defines the runtime contract.
    • Kubernetes makes scaling and rollback explicit.
    • AWS services stay behind predictable interfaces.
    04 Monitoring

    Production decides truth

    Logs, import failures and AI validation loops decide whether the system is actually healthy.

    • Real incidents feed the next engineering change.
    • Data quality issues are treated as product issues.
    • Operational fixes become documented system behavior.
    Evidence Ledger
    • Architecture notes: service boundaries, queues and storage.
    • Implementation notes: Spring Boot, Python and API contracts.
    • Data evidence: SQL cleanup, validation and batch processing.
    • Operational evidence: deployments, fixes and workflow hardening.
    What It Proves
    • The systems were built to run, not just to demo.
    • Technical choices were made under operational constraints.
    • Automation replaced repeated manual work.
    • AI was integrated inside real business workflows.

    Engineering Journal

    Not a blog. A logbook of decisions, migrations, fixes and lessons learned.

    Public Proof

    Public repositories that show the same patterns in code: async workflows, typed APIs, Java architecture and large-scale data generation.

    Repository

    Access points for recruiters and technical reviewers.