Mohamad Alani
Software engineerSoCal
Personalized recommendations infrastructure.
- Co-designed a config-driven orchestration engine for online recommendation models, and own its execution core.
- Authored the design that introduced the team's first distributed cache, so large-scale candidate filtering fits inside the page's latency budget. Shipped for peak events.
- Led the architectural decision and two-team alignment for migrating tile handlers onto the current engine.
- Shipped the team's first iOS upsell integration into an away-team Objective-C framework.
- Root-caused a thread-safety race in a shared iOS credential singleton that was producing six figures of crashes, and removed the race instead of masking it.
- Subject-matter owner for the Prime experience: mentor four engineers, run knowledge-transfer sessions, own peak-event runbooks.
5G wireless R&D data platform.
- Built a centralized platform for 5G antenna datasets used in model training and evaluation.
- Designed a schema-store service that validated project data across workflows.
- Ran workshops and live demos onboarding 50+ internal users.
Patient volume forecasting for emergency and urgent care.
- Seven-day forecasts and surge detection, so a site knows what tomorrow looks like before it staffs for it.
- Own the data pipelines, forecasting models, and backend.
- Multi-tenant SaaS, built with one partner.
Backend and data, with enough mobile to ship the whole path.
- Languages — Kotlin, Java, Python, TypeScript, Objective-C
- Infra — AWS (Lambda, ElastiCache, DynamoDB, ECS, SageMaker), CDK
- Focus — distributed systems, online inference, ranking pipelines, caching, system design
- Education — B.S. Computer Engineering, Purdue University
Three habits that survive every project.
- Start — build the smallest version that actually runs. It tells me what it needs faster than any plan does.
- Depth — read the source. Understand the layer under the one I am working in, then fix the cause instead of the symptom.
- Range — backend, data, mobile, whatever the thing needs to exist. I would rather learn the missing piece than scope around it.
Nothing published yet.
- First two: why a cache made large-scale candidate filtering possible, and how a config-driven engine keeps every new model from becoming a new deployment.