Backend engineer at Trademo — API layers, ingestion pipelines, and the data plumbing behind them. Day to day that means Django and Go services talking over Kafka, backed by PostgreSQL, Redis and Elasticsearch, shipped in Docker on Kubernetes.
I care about the reasoning behind backend decisions: when a cache is a lie, why idempotency saves you at 3 a.m., what an index actually costs on write, and how a service should behave when its dependency is already down.
| Focus | What that means in practice | Tools |
|---|---|---|
| Service APIs | REST and microservice design, auth, validation, versioning, clean error contracts | Go net/http, Django REST Framework |
| Event pipelines | Producers and consumers, batch + streaming ingestion, idempotent processing, delivery semantics | Kafka |
| Storage & search | Data modelling, index and query tuning, cache invalidation strategy | PostgreSQL, MySQL, Redis, Elasticsearch |
| Delivery | Containerised services, CI-driven deploys, shell tooling | Docker, Kubernetes, AWS, Linux |
| Systems work | Concurrency primitives, profiling, latency budgets, load testing | Go, C++, Rust fundamentals |
LogSift · Go OpenTelemetry Anthropic API React
A log intelligence copilot — the thing I reach for when a service is misbehaving and the logs are too big to read.
services --OTLP--> Go receiver --> scoring engine --> LLM reasoning --> dashboard
(OTel-native) (rolling z-score) (tool use) (React + Recharts)
- OTLP receiver in Go, OTel-native, so anything already emitting OpenTelemetry can point at it with no shim
- Scoring engine computing rolling z-scores over log streams to surface what actually changed, rather than what is merely frequent
- Reasoning layer on the Anthropic API with tool use, turning a flagged anomaly into an explanation
- Dashboard in React and Recharts for the part humans need to look at
| Project | Stack | What It Does |
|---|---|---|
| TicketTrove | Go | Movie ticket booking system — seat state machine and concurrency-safe reservation logic, the interesting part being what happens when two people click the same seat. |
| ByteVault | Django REST · React | Full-stack file management service covering upload handling, storage layout, and the whole file lifecycle. |
| gitRepoScanner | Python | Scans and reports on Git repositories — API design over an external provider, with pagination and rate-limit handling done properly. |
| SocialMediaAPIs_REUNION | Python | Social-graph API set — follows, posts, and auth, built to a spec under a deadline. |
More projects
| Project | Stack | What It Does |
|---|---|---|
| RecipeVaultBE | Python | Recipe API backend — CRUD service with clean resource modelling and layered validation |
| VisualizationDashboard | MERN | Analytics dashboard — aggregation queries fronted by a filterable UI |
| MajorProject2023 | Python · ML | Final-year project — full pipeline from data prep through model evaluation |
| portfo1io | React | Personal portfolio site with dynamic content and light/dark themes |
| calarm | Python | CLI alarm application — small, self-contained, argument parsing and scheduling |
| form_declutter | Python | Answer bank for job applications — store canned responses once, reuse them anywhere |
| Twot | Python | Twitter sentiment analysis bot |
Learning & practice repositories
| Repository | What It Covers |
|---|---|
| competitiveProgamming | C++ contest solutions — data structures, algorithms, problem archives |
| finalGrind | Interview-prep grind: DSA, low-level design, system design notes |
| competiveCompanionForSafari | Safari port of Competitive Companion — TypeScript browser extension |
| Python_CWM | Python fundamentals, revisited end to end |
| TypeScript_CWM | TypeScript types, generics, and tooling |
| javascriptCWM | JavaScript language deep-dive |
| React_CWM | React components, hooks, and state patterns |
| NodeJS_CWM | Node.js services and the surrounding ecosystem |
package main
import "fmt"
type Engineer struct {
Name string
Role string
Company string
Next []string
}
func main() {
me := Engineer{
Name: "Shadab Alam",
Role: "Backend Engineer",
Company: "Trademo",
Next: []string{
"deeper Go concurrency: schedulers, memory model, contention",
"profiling and load testing as a habit, not a fire drill",
"design reviews, service ownership, on-call reliability",
},
}
fmt.Printf("%s — %s @ %s\n", me.Name, me.Role, me.Company)
for _, goal := range me.Next {
fmt.Println(" ->", goal)
}
}Working toward SDE-2 scope: owning services end to end rather than tickets, and getting sharper at the layer below the framework.