Studies · since March 2025
POCLab
A single repository where I study technology through small, focused proofs of concept. Some topics become progressive series; others are reimplemented in several languages to compare ergonomics.
github.com/felipevisu/POC- 230+
- proofs of concept
- 6
- languages
- 17
- months without a break
- 475
- commits
Repository folders
- /frontend
- /ai
- /java
- /go
- /python
- /kafka
- /db
- /data
- /infra
- /architecture
- /algorithms
- one concept
- per POC. No monster projects.
- reproducible
- via Docker Compose whenever infra is involved.
- README
- explains the decision, not just the command.
- measured
- EXPLAIN ANALYZE, k6, react-scan — numbers before and after.
Strengths
Frontend in depth
React 19, RSC, SvelteKit, zoneless Angular, Web Components, micro-frontends, performance and CSP.
Polyglot backend
Java/Spring, Go, Python (Django, FastAPI), Node. Language chosen by the problem.
Data and messaging
Kafka, Debezium CDC, Schema Registry, TimescaleDB, pgvector, OpenSearch, PostGIS, Redis in 7 patterns.
AI with engineering
RAG with citations, tool use, NL→SQL agents, cost-based routing, PII privacy at the protocol level.
Observability
Prometheus, Grafana, OpenTelemetry with context propagated through Kafka, k6 for load.
Infra and DevOps
Multi-provider Terraform, EKS, Kubernetes, Helm, Jenkins with RBAC, Docker Compose across 20+ environments.
Featured POCs
Build it yourself, then measure.
/data
- salesman-kata
Full pipeline: Debezium CDC + CSV + SOAP → Kafka/MinIO → TimescaleDB, with lineage and ~20 containers.
- index-postgresql-benchmark
55 ms → 0.068 ms (~800×) with a B-tree index over 1M rows, query plans in the README.
- open-telemetry
One Jaeger trace crossing three Java services and the Kafka broker hops.
/ai
- rag-v2
PDF → docling → sentence-transformers → pgvector HNSW → chat with citations, across 6 services.
- smartrouter
A cheap classifier routes prompts across 6 models; cumulative cost vs always-Opus.
- claude-react-chat-interviewer
PII stays on the client; the model only knows which fields were filled.
/internals
- feact
React from scratch: vDOM, function components, useState/useEffect slots.
- mini-fetch
HTTP written by hand over a raw TLS socket.
- simple-bundler
Bundler that extracts CSS-in-JS via wyw-in-js/Babel.
/infra
- complete-infra
Jenkins via Helm with cross-namespace RBAC; same stack on real EKS via Terraform.
/fundamentals
- segtree-persistence
Persistent segment tree via path copying, queries on any version in O(log n).
- case-insensitive-query
Exact search over encrypted data: AES-GCM to display, HMAC-SHA256 to search.