Computer Science & Engineering student at East West University in Dhaka, learning to build things for the web one project at a time.
Ehsan Ahmed Abid
All work
That's everything so far.
There's more being built right now.
Portrait of Ehsan made of small coloured blocks
Currently:CSE Student, East West University
Based in:Dhaka, Bangladesh
Computer Science & Engineering student at East West University in Dhaka, learning to build things for the web one project at a time.
There's more being built right now.
I'm a Computer Science & Engineering student at East West University in Dhaka. I started in Fall 2024 and most of what I know about building software comes from shipping real projects next to my coursework.
I build websites end to end: the pages people see, the server behind them and the database underneath. My biggest project so far is the website and tournament platform for the East West University Esports Community, where players register, form teams and follow brackets and results.
At university I'm working through data structures and algorithms in C and C++. Outside class I'm learning TypeScript, Next.js and SQL. I want to become a full-stack engineer who builds fast, reliable products that people enjoy using.
Computer Science & Engineering
East West University
Since Fall 2024
Algorithms (CSE246), TypeScript & Next.js, SQL & PostgreSQL, WebGL / three.js
Confident: HTML & CSS
Learning: C, C++, Python, TypeScript, JavaScript, React, Next.js, Tailwind CSS, three.js / WebGL, Node.js, SQL & PostgreSQL, Data Structures, Algorithms, Git & GitHub, Vercel & Neon
Next up: Java, Docker
The official website and tournament platform of the East West University Esports Community.
A full website for my university's esports club. Visitors see news, events and announcements; players register on their own or as a team, and captains manage their roster.
Behind it is a complete tournament system: admins approve registrations, generate fixtures, run brackets and group standings, enter results (every correction is logged) and send in-site notifications.
It has its own login system (hashed passwords, httpOnly session cookies, role checks on the server) plus Continue with Google, and unit and integration tests that run against a real PostgreSQL database.
Next.js, TypeScript, Tailwind CSS, PostgreSQL, Drizzle ORM, Google OAuth, Vitest
My portfolio: a 3D portrait made of thousands of blocks, plus my own admin panel to edit everything.
The face on the home page is rebuilt from thousands of small textured blocks with WebGL instancing and custom shaders. When you scroll, it breaks apart and the camera flies through my projects.
Everything you read here comes from a database. I built a small admin panel ("Mission Control") where I edit text, projects, colours and effects, preview the draft and publish it in seconds without touching the code.
The page is cached as a static shell, so normal visits don't hit the database, and it falls back to a simple, readable version without WebGL or with reduced motion turned on.
Next.js, TypeScript, three.js, WebGL / GLSL, Neon Postgres, Drizzle ORM, Zod
Algorithms lab: two divide-and-conquer sorting algorithms written from scratch in C.
For my Algorithms course (CSE246) I implemented quick sort and merge sort in C, traced them step by step on sample arrays and compared their running time.
Merge sort is always O(n log n) but needs extra memory; quick sort is usually faster in practice and sorts in place, but drops to O(n²) with bad pivots. Seeing that in the numbers was the fun part.
C, Algorithms, Divide & conquer
Questions, ideas, internships or just a hello — I read every message.