For people who keep asking what to build in AI Engineering
> Build your own Reasoner (Chain of Thought implementation)
> Build your own Agent loop (ReAct pattern)
> Build your own Inference Server (in C++/Rust)
> Build your own Transformer from scratch (Attention is all you need)
> Build your own Vector Database (HNSW index)
> Build your own RAG pipeline
> Build your own Flash Attention kernel (CUDA)
> Build your own Quantization library (Int8/FP4 implementation)
> Build your own Mixture of Experts (MoE) routing layer
> Build your own Distributed training loop (FSDP/Tensor Parallelism)
> Build your own KV Cache paging system (like vLLM)
> Build your own Speculative Decoding system
> Build your own State Space Model (Mamba implementation)
> Build your own RLHF pipeline (PPO implementation)
> Build your own Small Language Model (SLM)
> Build your own Matrix Multiplication kernel
> Build your own LoRA (Low-Rank Adaptation) trainer
> Build your own Code interpreter sandbox
> Build your own DPO (Direct Preference Optimization) loss function
> Build your own Graph RAG system
> Build your own Model merger (Model Soups/Spherical Linear Interpolation)
> Build your own Interpretability tool (SAE - Sparse Autoencoders)
> Build your own Synthetic data generator
> Build your own Function Calling router
> Build your own Structured Output parser (Context Free Grammars)
> Build your own Multi-modal projector (CLIP implementation)
> Build your own LLM Eval harness
> Build your own Guardrails system (Input/Output filtering)
> Build your own Prompt caching mechanism
> Build your own Tokenizer (BPE implementation)
> Build your own Autograd engine (like Micrograd)
> Build your own Diffusion model (UNet + Scheduler)
> Build your own Vision Transformer (ViT)
> Build your own Whisper-style ASR model
> Build your own Text-to-Speech pipeline
> Build your own Semantic Router
> Build your own Knowledge Graph builder
> Build your own Data curation pipeline (MinHash/Deduplication)
> Build your own AI Gateway (Load balancing/Failover)
> Build your own Parameter Efficient Fine-Tuning (PEFT) library
> Build your own Text-to-SQL engine
> Build your own Recommendation system (Two-tower architecture)
> Build your own Embedding model
> Build your own Logit Processor
> Build your own Softmax kernel optimization
> Build your own Adversarial attack generator
> Build your own Audio Spectrogram transformer
> Build your own Neural Architecture Search
> Build your own Model Distillation pipeline
> Build your own Feature Store
> Build your own Database driver (for Vectors)
Top 10 resources to learn observability (practical for people shipping + on-call):
1) Observability Engineering (Charity Majors et al.). How to think in unknown unknowns, not dashboards.
2) Site Reliability Engineering + The SRE Workbook (Google). SLOs, error budgets, and how alerting ties to user pain.
3) OpenTelemetry docs + semantic conventions. Learn context propagation, spans vs metrics, baggage, and naming that survives refactors.
4) Prometheus docs (recording rules + alerting). Teaches cardinality limits, rate() vs histogram_quantile(), and alert design.
5) Grafana Labs blog. Real writeups on dashboards, Loki, Tempo, and what breaks at scale.
6) Elastic Observability guide. Solid patterns for log parsing, field mapping, and avoiding expensive queries in prod.
7) Honeycomb blog + papers. Great for high-cardinality events and asking questions during incidents.
8) Brendan Gregg’s USE method + RED method posts. Simple checklists for hosts, services, and request paths.
9) Jepsen analyses (Aphyr). Not observability tooling, but forces you to instrument for correctness under failure.
10) Practice project: instrument a small service (HTTP + Postgres + queue). Add trace IDs end-to-end, histograms, structured logs, then chaos test: kill a dependency and verify you can answer what broke, where, and how many users saw it
We removed ~80% of the Claude Code system prompt for our newest models, this is what we've learned about writing system prompts, skills and Claude.MDs for them. https://t.co/6DZwSrZjE9
many people asked me how to write CLAUDE.md or AGENTS.md, and i see lots of bad advice flying around
so i took some time to write down a guide in https://t.co/v9rrkWKEFr
tl;dr
- handwrite your user level AGENTS.md
- for project level ones, you don't write it. you train it like a neural net
i also open sourced my private solution "backpass" at https://t.co/DkM9b4TcZ0 - it samples your past agent sessions for a repo, distill key learnings and losses, synthesize them, and produce a gradient descent step as a proposal that you can review and apply to improve your AGENTS.md and project level skills
easiest way to run it is just "npx -y backpass" in your repo
hope it helps! please share with whoever you think can benefit from it
Top 10 resources to learn backend engineering (practical for working devs):
1) Designing Data-Intensive Applications (Kleppmann)
Replication, partitions, indexes, transactions. Explains the tradeoffs behind most architecture debates.
2) Release It! (Nygard)
Real failure modes: timeouts, backpressure, circuit breakers, bulkheads. Helps you write code that survives prod.
3) Web Scalability for Startup Engineers (Virding)
Queues, caches, load balancers, capacity math. Fast read with a lot of useful rules of thumb.
4) PostgreSQL docs (esp. EXPLAIN, indexing, autovacuum)
Most backend latency is the DB. Learn to read query plans and tune the boring settings that matter.
5) Redis docs + https://t.co/WYSNIitmxk topics (eviction, persistence, clustering)
Cache stampedes, hot keys, memory limits, and why your cache can become your outage.
6) OpenTelemetry docs + instrument one service end-to-end
Traces, metrics, logs, context propagation. You will debug faster and argue less about what happened.
7) Cloud provider well-architected guidance (AWS/Azure/GCP)
Concrete checklists on IAM, networking, retries, quotas, multi-AZ. Good for avoiding expensive footguns.
8) Martin Fowler blog (and tagged architecture posts)
Strangler fig, transactional outbox, idempotency, evolutionary design. Patterns that show up in migrations.
9) Practice project: build a tiny payments API
Postgres ledger table, idempotency keys, retries, outbox to a queue, reconciliation job, audit log, p95 latency budget.
10) Practice project: operate it like a real service
Docker + CI, load test (k6), dashboards (Prometheus/Grafana), alerts on SLOs, chaos test killing the DB, write the runbook for on-call rotation
CANCEL your weekend plans.
You NEED to:
• Master Context Engineering (it replaced Prompt Engineering)
• Build a custom MCP (Model Context Protocol) server from scratch
• Implement Trajectory Evals (grade the agent's steps not just the final answer)
• Add stateful persistence with Temporal dot io or LangGraph checkpoints
• Build inter-agent security (prevent Agent A from injecting Agent B)
• Track TTFT (Time to First Token) and ITL (Inter-Token Latency) not just total time
• Ship a local-first feature using MLX or WebLLM for zero-cost, private inference
• Build semantic caching with embedding similarity to kill 30% of your API bill
• Design graceful degradation chains (Opus fails → Sonnet → Local Llama → Cache)
• Implement async tool execution with webhooks for tasks that take >10 seconds
• Build a Data Flywheel that turns user thumbs-downs into tomorrow's golden dataset
• Add hard cost kill-switches per user and per tenant to prevent the $10k overnight bug
• Upgrade to Multi-Modal RAG (parse tables, charts and images not just plain text)
• Enforce typed state handoffs between agents (Pydantic models, never raw text)
• Set up Shadow Testing (route 5% of prod traffic to new prompts silently to compare)
• Implement Guardrails-as-Code (version control your safety rules like source code)
• Build a multi-tenant vector DB with strict row-level metadata filtering
• Write a public teardown of the hardest bug you fixed this week
You have way too much to do.
Bookmark & Repost.
90% of Go in 2026 comes down to mastering these 10 concepts (the rest is arguing about frameworks):
1) Context everywhere
Deadlines and cancellation across HTTP, DB, and RPC; missing ctx is how you get stuck goroutines and mystery latency.
2) Concurrency with budgets
Goroutines are cheap until they’re not; cap with worker pools/semaphores and track p95 queue time, not just CPU.
3) Channels vs mutexes
Channels for ownership and pipelines, mutexes for shared state; mixing both without a clear rule breeds deadlocks.
4) Escape analysis and allocations
Know when you’re putting stuff on the heap; a single hot path allocating 1KB/request at 5k rps is 5MB/s of GC churn.
5) Interfaces and nil traps
Typed nil inside an interface still isn’t nil; it shows up as weird panic paths and broken error checks.
6) Error hygiene
Wrap with context, don’t log twice, and make retryable errors explicit; production is debugging by stack + message.
7) Tooling that pays rent
go test -race, go vet, staticcheck, fuzz, and pprof in CI; most outages are regressions these would’ve caught.
8) Debugging in prod
Learn pprof CPU/heap/block, goroutine dumps, and trace; knowing what a blocked goroutine looks like saves hours.
9) Observability, not printfs
OpenTelemetry traces + metrics + structured logs; always tag tenant, endpoint, status, and build SHA for bisects.
10) Security defaults
Disable http.DefaultTransport surprises, set timeouts, validate inputs, pin TLS settings, and audit deps; the common bug is trusting inbound JSON too much
I cracked 5 Staff/Senior Eng. roles in 2025. Here's my full Senior SWE preparation roadmap for Google L5 / Meta E5 / Amazon L6 type roles.
These are roughly ₹70L to ₹1.3Cr+ total-comp roles in India depending on company, offer and stock.
If I were preparing again, this is how i'd do it.
Asked: design Uber ride matching.
1) Clarify requirements
- Goals: match rider to a nearby driver, fast, fair, safe
- Latency: p95 match < 2s, pickup ETA accuracy matters more than perfect optimality
- Scale: city-level spikes (events, rain), tens of thousands of online drivers
- Constraints: cancellations, driver decline, surge, accessibility, pooling?
2) Core APIs + data model
- POST /rides (rider_id, pickup_latlng, dest_latlng, product)
- POST /drivers/{id}/location (latlng, heading, speed, availability)
- POST /rides/{id}/offer (driver_id) and driver accepts/declines
Tables:
- drivers(id, status, product_caps, last_seen)
- rides(id, rider_id, status, pickup, dest, created_at)
- offers(ride_id, driver_id, state, expires_at) idempotent keys everywhere
3) Architecture sketch
- Location ingestion service writes driver locations to in-memory geo index (Redis GEO, H3/S2 cells) with TTL
- Matching service: on ride request, query nearby cells, score candidates (ETA, acceptance rate, idle time, product)
- Offer workflow via queue (Kafka/PubSub): send offer, wait N seconds, next driver on timeout/decline
- Ride state as a small state machine stored in strongly consistent DB; cache for reads
4) Scaling decisions
- Partition by city + geo cell, keep hot state close (regional clusters)
- Backpressure: cap candidate set (ex: top 50 by distance) then compute ETA for top 10
- Precompute ETAs with routing service cache; degrade to distance-based if routing is slow
- Use streaming updates, but coalesce driver location writes (ex: 1 Hz) to avoid write storms
5) Tradeoffs to call out
- Consistency vs speed: geo index is eventually consistent; ride state transitions must be consistent
- Fairness vs efficiency: pure nearest driver can starve others; add rotation/idle-time weighting
- Global optimum vs local heuristic: Hungarian matching is too slow; greedy with constraints wins
6) Failure cases + mitigations
- Driver app flaps: TTL + last_seen, avoid offering to stale drivers
- Duplicate requests/offers: idempotency keys, dedupe by ride_id
- Queue delays: offer expiry, retry with jitter, circuit breaker to simpler matching
- Partial outages: fall back to cached geo index, degrade ETA accuracy, pause pooling
Top 10 resources to learn technical writing for engineers (stuff that helps in PRDs, RFCs, runbooks, and postmortems):
1) Google Technical Writing Courses (free). Tight basics on structure, clarity, and editing, with exercises.
2) The Elements of Style (Strunk & White). Not modern, but it’ll cure 50% of rambling docs fast.
3) On Writing Well (Zinsser). Great for cutting fluff and writing for busy readers who skim.
4) Docs for Developers (Jared Bhatti et al.). Practical patterns for reference docs, tutorials, and troubleshooting sections.
5) Write the Docs (site + conference talks). Real doc problems: information architecture, doc debt, ownership models.
6) Microsoft Writing Style Guide. Concrete rules for voice, headings, UI terms, and consistency at scale.
7) Google Developer Documentation Style Guide. Good defaults for code samples, linking, warnings, and scannable pages.
8) Diátaxis Framework (docs structure). Helps stop mixing tutorial vs reference vs explanation in one messy page.
9) Grammarly or Vale + a style guide in the repo. Catch repeats, passive voice, long sentences during CI, like tests for prose.
10) Practice project: write 3 production-shaped docs
- an RFC for a breaking change (rollout plan + rollback)
- an on-call runbook (symptoms, checks, commands, dashboards)
- a postmortem (timeline, contributing factors, follow-ups with owners)
If you want to become awesome at AI system design, save these 15 engineering blogs:
I picked recent technical breakdowns from companies building AI systems at scale.
I have 12 years of experience and work as a Principal Engineer @Atlassian.
I’ve seen Concurrency scares junior engineers.
But Replication scares even senior ones.
Once you copy data to a second machine, every question you thought was settled reopens. Which copy is right. What a user sees after they hit save. What happens when the network splits in half.
These 20 concepts cover it. Save this thread.
Read till the end.
Your production incidents will get shorter.
this is f*cking gold
Andrej Karpathy joined Anthropic five weeks ago.
Two Anthropic seniors just made Karpathy's loop 1000x better with "Graph Engineering"
the agentic systems got 1000x better the moment you wired agents into a graph
I dropped it into my setup. The very first response was different.
Not slightly different. Completely different.
Claude stopped giving generic answers and started working exactly the way I think.
Bookmark it before it gets lost in your feed.
Read it now, then check the article below.
as you all know I was on a run to gather more and more information on how S3 transitioned from its one consistency to another I got to find soo many great reads on its internals from different sources
here are few (all the links in the comments)