01 / Profile

Ifrah
Ashraf

I'm a full-stack engineer with a systems habit: I like understanding the data, APIs, UI, and constraints connecting them, not just making one layer look finished. I enjoyed engineering in college in both its forms — learning seriously, and learning with friends through conversations, collaboration, and the occasional late push. I worked hardest when the moment called for it; that balance shaped how I work now.

As I move through the professional world, I'm going back to C to strengthen my fundamentals and spending more time understanding systems at depth, including tools like Git rather than using them at a shallow level. These things take time. That is part of the work, and it is worth it.

Ifrah Ashraf
Software engineer2026

02 / Experience

Where I've worked

From shipping product features to entering a full-time engineering role, each step has increased my ownership.

01

Wipro

Jul 2026 — Present

Current role

Software Engineer

Joined Wipro as a full-time software engineer following its acquisition of Harman Connected Services. Currently completing the training programme and preparing to contribute at production scale.

  • Building depth across Wipro’s engineering practices and delivery standards
  • Translating training into reliable, production-ready software habits
Software EngineeringTrainingWipro
02

Harman Connected Services

Jan 2026 — Jun 2026

Completed

Agentic AI Data Engineer Intern

Completed an internship in the Data Engineering team, building a multi-agent system with LangGraph and focusing on the supervisor layer.

  • Designed supervisor coordination logic for multi-agent pipelines using LangGraph
  • Integrated MCP server tooling and human-in-the-loop checkpoints
  • Built agentic workflows to automate end-to-end data engineering tasks
LangGraphMCPMulti-AgentPythonData Engineering
03

Poster.fun

Aug 2025 — Dec 2025

Completed

Full Stack Developer Intern

Built and shipped production features for a design-generation platform, owning the AI image pipeline and authentication infrastructure end-to-end.

  • Reduced AI image API response time from 2 min → 15 sec with async Redis jobs
  • Architected non-blocking generation workflows with BullMQ
  • Shipped full-stack features across frontend and backend
Next.jsNode.jsRedisBullMQTypeScript

03 / Capabilities

How I work

A practical engineering practice: understand the system, make the trade-offs visible, and deliver with care.

Build

Engineering

01
  • Full Stack Development
  • AI / Agent Systems
  • Backend Architecture
  • API Design & Integration
  • Database Design
  • Cloud Infrastructure

Think

Approach

02
  • First Principles Thinking
  • Systems Design
  • Technical Writing
  • Open Source Contribution
  • Performance Engineering

Use

Tech Stack

03
GoNode.jsPythonTypeScriptNext.jsReactPostgreSQLMongoDBRedisDockerLinuxLangGraphBullMQMCP

04 / Work

Built to understand

A small set of systems that show how I think, build, and take problems from idea to implementation.

Multithreaded Web Scraper
01Completed

Multithreaded Web Scraper

A practical exercise in concurrency

I built this to understand concurrency in practice. It fetches multiple URLs at once and makes the coordination visible instead of hiding it behind a framework.

What I learned

  • Used goroutines and channels to coordinate work
  • Kept shared state safe while collecting results
GoGoroutinesChannelsHTTP
View repository
Smart India Hackathon — School Resource Allocator
02Hackathon finalist

Smart India Hackathon — School Resource Allocator

From UDISE data to a resource plan

The project is a platform for schools to enter resource data from the UDISE portal — number of teachers, washrooms, classrooms, and other facilities. It categorises each school as “odd” or “standard”, then uses an allocation algorithm to identify the resources required to move an odd school toward the standard.

What I learned

  • Structured school data into a usable resource picture
  • Used categorisation and an algorithm to identify the transition plan
AlgorithmsNext.jsNode.jsPostgreSQL
View repository
RAG System from Scratch
03Completed

RAG System from Scratch

Learning retrieval by building the pieces

I built this to understand retrieval instead of treating it as a black box. PDFs are cleaned, split into page-level records, enriched with metadata, embedded, and retrieved for answers.

What I learned

  • Made the Bronze → Silver → Gold stages explicit
  • Used Qdrant to inspect and query vector data
PythonFastAPIQdrantVoyage AI
View repository

05 / Proof

Signals that matter

A few concrete markers of how I learn, contribute, and follow through.

01

Smart India Hackathon finalist

National-level competition · 2024

Built and presented a dynamic resource allocation algorithm for standardizing government schools.

View
02

Open source contributor

cal.com · 2025 — present

Contributing to a production open-source monorepo used by developers around the world.

View
03

Agentic systems builder

LangGraph · MCP · Python

Designing agent coordination, tool access, and human review into useful data workflows.

06 / Writing

Notes from the work

Short reflections on systems, learning, and the decisions behind the code.

Dev.toFeb 22, 2026

From Documents to Answers: How RAG Works

A practical look at how documents become searchable context, and how cosine similarity helps retrieve a useful answer.

8 min readRead