Available for freelance work

Building digitalproducts frominterface toinfrastructure.

Altaf Shaik — Full-Stack Developer. Building digital products from interface to infrastructure.

I'm a full-stack developer based in Hyderabad. I design and build web applications end to end — the interface people use, the API behind it, and the data model underneath.

Altaf Shaik, photographed in black and white against a dark background.
Altaf ShaikHyderabad, India
Based in
Hyderabad, India
Role
Full-Stack Developer
Focus
Frontend · APIs · Databases
Scroll
About

I build web applicationsend to end.

About Altaf Shaik

That means the interface people actually touch, the API that serves it, and the database schema holding it together — designed as one system rather than three handoffs between three people.

Angular and TypeScript are where I spend most of my working day. Alongside them I build with React, Next.js, Node and .NET, which means I can pick the stack that fits a job instead of pushing every project through the same one.

The work I enjoy most is the kind where the data is messy, the workflow is specific to one business, and nothing off the shelf quite fits.

Based in
Hyderabad, India
Day to day
Angular · TypeScript · REST APIs
Also build with
React · Next.js · Node · .NET
Open to
Freelance and contract work
Services

What I can build or fix for you

Four kinds of work, from a one-afternoon repair to a system you'll run your business on.

  • I take on existing sites and applications: tracking down the bug that only happens on mobile, untangling a build that stopped deploying, replacing a plugin that broke after an update, or picking up a codebase the last developer walked away from. I start by reproducing the problem, then fix the cause rather than the symptom.

    What you get

    • Bug diagnosis and repair
    • Performance and loading-speed work
    • Dependency and framework upgrades
    • Ongoing maintenance and small changes

    Usually built with

    • JavaScript
    • TypeScript
    • Angular
    • React
    • Node.js

Not sure which of these you need? Describe the problem and I'll tell you what it actually takes. Get in touch.

Technical DNA

The tools I actually reach for

No percentage bars or star ratings — those measure nothing. This is simply what I work with, with the handful I use every day marked.

Frontend

Component architecture, state, and interfaces that hold up on a phone.

  • Angular — Part of my day-to-day work
  • TypeScript — Part of my day-to-day work
  • RxJS — Part of my day-to-day work
  • Angular Signals
  • React
  • Next.js
  • JavaScript
  • HTML5
  • CSS3
  • SCSS / Sass

Backend

APIs, business logic, authentication and integration work.

  • Node.js
  • NestJS
  • Express.js
  • C#
  • .NET
  • ASP.NET Web API
  • REST APIs — Part of my day-to-day work

Databases

Schema design, queries, and the data workflows an app runs on.

  • PostgreSQL
  • MySQL
  • MongoDB

Tooling

Everything around the code.

  • Git — Part of my day-to-day work
  • Responsive design
  • Accessibility

Part of my day-to-day work. Everything else is something I build with — it is not a claim of mastery in each one.

Selected work

Things I've built

Four projects, each with the problem it addresses and what it actually does. The visuals are mockups drawn to illustrate the interface, not screenshots.

estimate — step 2 of 3CATEGORYDETAILSGet estimateESTIMATED VALUE₹ 8,420based on 42 kg · grade BShare estimate
Illustrative interface mockup — not a screenshot
01Sep — Dec 2025

Scrap Price Estimator

A multi-page site that gives people an estimated scrap price for the products they select.

The problem
Scrap pricing is opaque. Anyone with material to sell has to call around, describe what they have, and take the first number they're given — with no way to sanity-check it first.
What it does
A guided flow: pick a product category, describe the item, get an estimate back. The pricing logic lives server-side so rates can be updated without touching the frontend, and the whole thing is built to be used on a phone standing in a yard.
  • Category-driven product selection
  • Server-side pricing logic, editable without a redeploy
  • Mobile-first flow with a shareable estimate
records — 1,284 rowsEDIT RECORDSave
Illustrative interface mockup — not a screenshot
02Nov 2023 — Jan 2024

Data Extractor Tool

An internal tool for creating, reading, updating and deleting structured records at volume.

The problem
Operational data tends to live in spreadsheets that three people edit at once. There's no validation, no history, and no safe way to correct a thousand rows after someone pastes the wrong column.
What it does
A record-management interface backed by a relational schema. Records are created, edited and removed through a validated form layer rather than free-text cells, so the data stays consistent as the table grows.
  • Full create / read / update / delete workflow
  • Validated forms over a relational schema
  • Searchable, paginated record table

My roleBuilt the Angular frontend, the ASP.NET backend and the MySQL schema behind it.

  • Angular
  • ASP.NET
  • MySQL
  • TypeScript
fleet — 9 devices onlineDEVICEManage
Illustrative interface mockup — not a screenshot
03

IoT Management App

A platform for managing connected devices, with a 3D interface and scroll-driven navigation.

The problem
Device fleets are usually presented as a flat table of serial numbers. That tells you what exists, but not where anything sits in relation to anything else — which is the thing you actually need when something goes offline.
What it does
A spatial interface instead of a list: devices rendered as connected nodes you can move through, with status surfaced visually and scroll used to navigate between groups rather than to page through rows.
  • Interactive 3D device view
  • Scroll-driven navigation between device groups
  • Per-device status and management actions
catalogue — 38 productsEDIT PRODUCTSaveCancel
Illustrative interface mockup — not a screenshot
04

Bagify

An admin application for managing a product catalogue — creating, updating and removing items.

The problem
Small retailers get handed a storefront and no sensible way to run it. Adding a product becomes a support ticket, and the catalogue drifts out of date because changing it is somebody else's job.
What it does
A catalogue admin built for the person who actually runs the shop: add an item, change a price, pull something that's out of stock. Plain forms, immediate feedback, nothing that needs a manual.
  • Product create, update and delete
  • Catalogue listing with search
  • Form-level validation and confirmation states

Also built

  • Trending MoviesFetches and displays the day's top 20 trending films from TMDB.TMDB API · REST
  • PortfolioAn earlier iteration of this site.

One of these gets the full treatment next.

Case study
Case study

SkyboardA live dashboard that pulls weather, traffic, prayer times and rates into one screen.

skyboard — liveWEATHER34°feels 38°NEXT PRAYER15:42TRAFFICRATES24H
Illustrative interface mockup — not a screenshot
01Intro

One screen instead of six apps.

Skyboard is a live dashboard. It aggregates the handful of things you check anyway — the weather, how bad the traffic is, when the next prayer is, what the rates are doing — and puts them on a single screen that stays open.

02Problem

The information is fine. The gathering is the problem.

None of this data is hard to find. It's just scattered. Four apps, four load times, four different ideas of what a card should look like — repeated every morning, and again before you leave the office.

  • Each source has its own app, refresh rate and failure mode
  • No single view of the things that actually affect the day
  • Checking is a habit, so friction compounds daily
03Product

A board, not a feed.

Every source is a tile. Tiles are sized by how much attention they deserve rather than by how much data they return, and the board is designed to be glanceable from across a room — large numerals, high contrast, no interaction required to read it.

  • Tile-based grid, each tile owning one data source
  • Readable at a distance: large numerals, strong contrast
  • Passive by default — no clicking needed to get the answer
04Features

What each tile does.

The tiles share a contract — fetch, cache, render, degrade — but each one presents its data the way that data is actually used.

  • Weather: current conditions plus the part of the forecast that changes plans
  • Traffic: live conditions on the routes that matter to you
  • Prayer times: next prayer surfaced, full day available
  • Rates: current values with direction of movement
05Architecture

The frontend never talks to a third party.

Every external source is fetched server-side, normalised into one internal shape, and cached on an interval that suits that source. The browser only ever sees a single endpoint returning a predictable payload. That keeps API keys off the client, stops four different rate limits from becoming the frontend's problem, and means a slow upstream degrades one tile instead of the whole board.

  • Server-side aggregation — keys and rate limits stay on the server
  • Per-source cache intervals matched to how fast each one changes
  • One normalised payload for the client, whatever the upstream shape
  • Per-tile failure: one dead source doesn't take the board down
06Status

Where it stands.

Skyboard is a working build. The architecture below is a description of how it is put together, not a claim about scale or traffic — if you want to talk through how it was approached, or want something similar built around your own data, the next section has every way to reach me.

How I build

One system, four layers

A request leaves the interface, is validated at the API, resolved by the domain layer, answered by the database, and travels back the same way. Designing those four together is the whole job.

Interface

Angular · React · Next.js

components · state · forms

API

NestJS · Express · ASP.NET

routing · validation · auth

Domain logic

Services · rules · jobs

business rules · scheduling

Database

PostgreSQL · MySQL · MongoDB

schema · queries · indexes

Illustrative reference architecture. It shows how these layers generally fit together — it is not a diagram of any specific client system.

One shape, both ends

The types that describe a response live in one place and are used by the API and the frontend alike. When the shape changes, the compiler finds every caller before a user does.

typescript · shared interfaces

Validate at the boundary

Input is checked where it enters the system — in the form for feedback, and again at the API because the form is not a security control. Bad data gets a clear message, not a stack trace.

client + server validation

Fail in one place, not everywhere

Requests fail. The question is whether one slow upstream degrades a single panel or takes the whole screen down. Errors are caught close to where they happen and surfaced as state, not as a blank page.

error boundaries · fallback states

Phone first, properly

Layouts are designed for small screens rather than scaled down to them. Touch targets, readable type, no hover-only information, and keyboard access throughout.

responsive · wcag · keyboard

Ship less JavaScript

Render on the server where it makes sense, lazy-load what isn't needed yet, size images for the slot they land in, and keep animation off the main thread. Fast is a feature.

ssr · code-splitting · lazy media

Leave it readable

Clear structure, meaningful names and a README that explains how to run and deploy it. You should be able to hand the project to another developer without a phone call.

docs · conventions · handover

Journey

Where I work, and how

The timeline lists only what I can state plainly. The principles beside it are how I approach a project, whoever it's for.

  1. Current role

    Full-Stack DeveloperQuduratech

    Hyderabad, India

    Full-stack development on the company's web applications — building interfaces, the APIs behind them, and the data they run on.

  2. Education

    EngineeringCMR Technical Campus

    GPA 8.02

How I work

Understand the workflow first

Before writing anything I want to see how the work is done today — including the spreadsheet everyone pretends isn't load-bearing. The data model should fit the job, not the other way round.

Build it so it can be changed

Most of a project's life happens after launch. Clear component boundaries, typed interfaces and readable code mean the next change takes an afternoon rather than a rewrite.

Handle the unhappy path

Empty states, slow networks, failed requests and bad input are the normal case, not the exception. An interface that only works when everything goes right isn't finished.

Stay reachable

Short feedback loops, plain-language updates, and no disappearing for two weeks. You should always know what state your project is in.

Contact

Have an ideaworth building?

Contact Altaf Shaik

Tell me what you're trying to build or what's broken. A couple of sentences is enough to start — I'll come back with what it would actually take, and an honest answer if it isn't something I should be doing.

Based in
Hyderabad, India
Working hours
IST (GMT+5:30), flexible for overlap
Status
Taking on new projects