When you first look at a Persian rug, what stands out are the large, intricate patterns. But as you look closer, you see the thousands of individual threads and knots that made those designs possible. This page is structured in much the same way. It begins at the top with the prominent, abstract patterns of my recent careers. As you read further down into the past, it transitions into a narration of the early, foundational threads that were meticulously woven together to bring me here. If you are looking for my standard resume, you can download the PDF here .

Life in California

Oway — Senior Software Engineer

Dec 2025 – Present · San Francisco / Remote

Oway is a startup building modern infrastructure for freight operations. The company hires generalist engineers with strong product judgment, and much of the engineering work sits at the intersection of logistics, automation, machine learning, and internal tooling.

My work here has focused on architecting and building foundational infrastructure that turns manual, inefficient, and fragmented freight workflows into structured, observable, and increasingly automated systems.

A few of the things I worked on:

  • Built core infrastructure for agentic workflows, including execution patterns, tool interfaces, policy boundaries, and integrations with internal services.
  • Developed infrastructure for email workflows, supporting communication-heavy operational processes across shippers, carriers, and internal teams.
  • Set engineering standards across architecture, testing, code quality, and practical agentic development patterns for both human and AI-assisted engineering.
  • Designed and built a new foundation for coverage-related workflows, aimed at supporting more data-driven and machine-learning-based decisions over time.
  • Self-hosted several latency-critical and high-cost services with open-source alternatives, cutting expenses and improving control over data, compliance, and reliability.

Worked with: TypeScript, Python, Java, Go, PostgreSQL, MongoDB, BigQuery, AWS, GCP, Kubernetes, Terraform, and SageMaker.

Visa — Software Engineer

May 2025 – Dec 2025 · San Francisco / Hybrid

Visa Direct is Visa’s real-time money movement platform, supporting modern payment experiences across financial institutions, fintechs, businesses, and global markets. I worked on the client-facing Visa Direct Portal team, one of the more product-driven and startup-like parts of Visa, where the focus was on building new payment experiences, improving client workflows, and exploring applied GenAI use cases inside enterprise payments. I contributed to GenAI initiatives across Visa Direct and Visa+ workflows.

What I worked on:

  • Led engineering work for an LLM-powered compliance review system that checked client-facing Visa+ UI flows against product policies, guidelines, and brand standards.
  • Re-architected that system, cutting p99 end-to-end review latency from roughly 35 minutes to 3 minutes.
  • Wrote design documents on RAG accuracy, evaluation quality, human feedback loops, and the practical limits of LLM-based compliance review.
  • Trained three subject-matter experts on prompt specification, review workflows, and how to translate policy knowledge into reliable AI-assisted systems.
  • Led LLM onboarding for an eight-engineer team, helping engineers understand prompt design, GenAI workflows, and practical usage patterns.
  • Owned engineering for GenAI demos presented at Visa’s Annual Market Kickoff, a global executive leadership event focused on strategic priorities, market direction, and major company-wide initiatives.

Worked with: TypeScript, Java, React, Spring Boot, Oracle DB, Kubernetes, and LLM/RAG systems.

SafetyKit — Member of Technical Staff

Dec 2024 – May 2025 · San Francisco

SafetyKit is a YC-backed company building AI agents for trust, safety, risk, fraud, and compliance workflows. At the time, the company was a small, highly technical team with a forward-deployed engineering model, where engineers owned customer problems end to end across product, infrastructure, policy, and production rollout.

As the sixth hire, my work focused on turning complex enterprise policies into production AI systems, owning workflows across frontend, backend, cloud infrastructure, third-party integrations, model orchestration, and customer deployment.

Highlights:

  • Owned forward-deployed engineering work for major enterprise accounts, translating complex trust, safety, fraud, and compliance requirements into production AI workflows.
  • Helped scale the company from mid-six-figure ARR to a multimillion-dollar run rate by building and expanding customer-facing automation systems.
  • Re-architected an expensive agentic pipeline, cutting p99 processing cost from $0.20 to $0.015 per request through layered small-models and more efficient model routing.
  • Built fraud and policy-detection pipelines across text and image workflows using model cascades, SAM2, CLIP, and image-manipulation detection techniques.
  • Built company infrastructure for agentic computer-use workflows, integrating LLM providers, browser automation patterns, AWS services, and internal application logic.
  • Designed prompts, policy structures, and multi-stage evaluation flows across more than 20 safety and compliance categories.

Worked with: TypeScript, Python, AWS, BigQuery, OpenAI SDK, Anthropic SDK, computer-use agents, and production AI infrastructure.

Freelance — Software Engineer

Apr 2024 – Dec 2024 · Remote

I moved to San Francisco in April 2024. During my first few months in the U.S., while I was still adjusting, I worked as a freelance software engineer with frontier AI companies, YC startups, and early-stage technical teams. The work was usually short, focused, and technical, spanning synthetic data, retrieval systems, applied AI prototypes, and general full-stack development.

What I worked on:

  • Contracted with xAI on synthetic STEM data used in Grok training workflows, focusing on high-quality technical reasoning and evaluation examples.
  • Designed RAG architecture for a YC startup, improving retrieval precision from 63% to 87% across more than 10,000 documents.
  • Built applied AI prototypes and demo systems for early-stage teams exploring LLM-based workflows, search, retrieval, and automation.
  • Solved targeted algorithmic and optimization problems for technical clients, drawing on a strong data-structures and algorithms background.

Worked with: Python, TypeScript, LLMs, RAG systems, embeddings, vector search, algorithms, and AI evaluation.

April 2024: Finland 🛫 San Francisco 🛬

The job-market-ready version of me was shaped years earlier. The story starts back in Finland.

Life in Finland

The Finland chapter of my life is less career-focused than the sections above. It is more about education, research, immigration, and the kind of personal growth that shaped how I think, work, and learn. I believe it was one of the most important periods of my life.

2021: Moving to Finland and Starting Over

In August 2021, I moved to Finland to study Software at LUT University .

After my first semester, I became a teaching assistant for C and Java programming courses. My work included designing exercises and helping other students get more comfortable with programming syntax, problem-solving, and basic engineering thinking.

By the end of my second semester, I had also landed my first research assistant position. Because of my interest in emerging technologies, I was assigned to a team working on a course about AI use cases, aimed at software students at all levels. This is where I created an introduction to OpenAI and showed students how to use the Playground to explore generative AI and think about possible use cases.

Screenshot of the Legacy OpenAI Playground.

At the end of my second semester, before the summer, I applied to Tampere University. The program there was broader and better ranked. It gave me access to a wider range of courses, including business management, machine learning, signal processing, and other areas I wanted to explore. Since I had completed 67 ECTS at LUT with perfect scores, I was accepted to Tampere University with a full scholarship that covered the rest of my bachelor’s degree and continued through the end of master’s studies.

2022: Tampere University and Expanding Opportunities

Midway through my first semester at Tampere University, I heard about a career fair. By then, I had already built several personal projects, including a small blockchain implementation , a pub/sub-style hyperlink fetcher , a live chat project in Haskell , and a simple code-sharing CRUD app .

Around the same time, I had discovered LeetCode and become obsessed with it. It was genuinely fun for me, and I had already solved around 200 problems on the platform. So I printed a few copies of my resume, went to the career fair, handed them out, and asked if people knew LeetCode.

Most did not. But one Nokia engineer, Hari , did. He passed my resume to his manager, I went through the interview process, and I got hired for my first internship at Nokia.

Dec 2022 – May 2023: Nokia

My first and only software engineering internship was at Nokia, where I worked as a backend intern on the Data Collection and Analysis Platform team. Our team built APIs that interacted with lower-level systems, collected data from different sources, and exposed that data in a more coherent and usable way.

I worked on a Node.js and TypeScript project where both the runtime and TypeScript versions were reaching the end of long-term support. Some third-party libraries, including our mocking library, were also starting to drop support. Technical debt was growing, so I took the initiative to start a migration effort.

I talked it over with the team, got guidance and permission from senior engineers, and started working through the migration. It was easier than it could have been because the documentation was clear, and ChatGPT had recently become available, so I had a new kind of support tool while working through the changes.

At the time, I was also deeply interested in algorithms and performance. I parallelized a few external API calls and added caching for some commonly requested data, which improved endpoint performance and increased throughput as a byproduct.

2023: After the Internship

After my Nokia internship, I wanted to focus more seriously on my university work. There were many courses I was genuinely excited about. That semester, I focused on the subjects that interested me most, including signal processing, algorithms, parallel programming, and matrix analysis.

At the same time, I wanted to build a stronger relationship with the university. I got in touch with Professor Kari Systä , the head of the Software department, and joined his team working on liquid software . My work focused on developing tools and infrastructure that helped the department run and test different metrics on WebAssembly.

That work eventually became part of my research and thesis direction: benchmarking different compilers on the newly introduced WebAssembly System Interface standard. The final thesis is available here .

2024: The Final Chapter

By early 2024, life in Finland had started to feel stable. My research was going well, my courses were getting back on track, and I was slowly preparing to return to the job market while finishing my thesis on the side. I was also considering a move toward a Business and Technology master’s program at Tampere University, and I had started thinking about the prerequisite courses I would need to take over the summer.

Around the same time, thanks to the network I had built in Finland, I was hired by a local startup called Treon . The company looked promising, and I was just getting onboarded and thinking through the different ways I could contribute.

Then my U.S. visa suddenly arrived!!

Until that point, I had expected to have at least another year in Finland. I thought I would have time to keep building my relationship with the university, settle into my work at Treon, finish my thesis at a normal pace, and make a paced decision about what came next. But coming to the U.S. as an Iranian is not simple, and once the visa is issued, there is only a short window to use it. Mine was valid only until the end of May, and the clock was ticking.

I cut my work schedule from four days a week to two, narrowed the scope of my thesis, wrapped up what I could, and traveled around Europe and Finland to say goodbye to friends. The sudden change made some of the relationships I had hoped to keep building with the university more fragile, and people at the company were (understandably) surprised too. Life had been moving in one direction, and then, almost overnight, it moved in another.

That is how the Finland chapter ended and the California chapter began.

August 2021: Iran 🛫 Finland 🛬

To be continued.


🧵 Fun Fact: Persians usually buy their rugs in a 3 × 4 square-meter size, which in most cases translates to roughly 11.2 to 22.3 million hand-tied knots, depending on the density.