Hi, I'm

Tripti Arora

Software Engineer

I build scalable web applications, AI-powered products, and reliable software systems.

bash

$ whoami

> Software Engineer

$ stack

> React · TypeScript · JavaScript · Next.js

$ status

> Open to opportunities

My Desk

A few things I spend my time with. Click around.

Projects

A selection of things I've built. Click a card for the full breakdown.

Skills

Hover or focus a technology to see where I've used it.

Languages

Frontend

Backend & APIs

Tools & Integrations

AI

Used in

Hover a skill on the left to see related projects.

Experience

Click a year to see what I was doing.

Junior Frontend Developer

Tequity

Jodhpur, Rajasthan

Built and maintained responsive web applications, collaborating with cross-functional teams to deliver high-quality user experiences.

Responsibilities

  • Implemented best practices for code quality, performance optimization, and accessibility.
  • Developed and maintained responsive web applications using modern frontend technologies.
  • Collaborated with cross-functional teams to deliver high-quality user experiences.

Achievements

  • Successfully delivered multiple projects on time, receiving positive feedback from clients and stakeholders.
  • Contributed to the development of a reusable component library, improving development efficiency and consistency across projects.
React.jsTypeScriptNext.jsJavaScriptCSSHTMLReduxRest APIsTailwind CSSGitJiraFigma

How I Think

Engineering is a series of trade-offs. Here's how I approach them.

Build for the user workflow

I start by understanding how people actually use a product, then design interfaces around the workflow instead of forcing users to adapt to the system.

Keep complex interfaces simple

For dashboards and enterprise applications, I focus on clear information hierarchy, reusable components, and predictable interactions so complex workflows remain easy to understand.

Design for responsive experiences

I treat responsive behavior as part of the design from the beginning, building interfaces that work consistently across desktop, tablet, and mobile rather than adapting them as an afterthought.

Build reusable UI patterns

I prefer reusable components and consistent design patterns so large applications remain easier to maintain and new features can be added without duplicating UI logic.

Integrate, don't isolate

When a product depends on external tools, I try to bring those workflows closer to the user instead of making them switch between disconnected systems.

Make permissions part of the experience

For role-based applications, permissions should influence what users can see and do throughout the interface, not just exist as a backend restriction.

Interaction should have a purpose

I use animation and interaction to communicate state, hierarchy, and feedback rather than adding motion simply for visual effect.

GitHub Activity

Live data from my public GitHub profile.

19

Public Repos

0

Followers

2

Following

0

Total Stars

Code Lab

A few real snippets from my day-to-day work. Read-only — "Run" replays a precomputed result.

useDebouncedValue

A debounce hook used to keep search/filter inputs responsive.

function useDebouncedValue(value, delayMs = 300) {
  const [debounced, setDebounced] = useState(value);

  useEffect(() => {
    const timeout = setTimeout(() => setDebounced(value), delayMs);
    return () => clearTimeout(timeout);
  }, [value, delayMs]);

  return debounced;
}

formatCurrency

Currency formatting used across dashboard views.

function formatCurrency(amount, currency = "INR") {
  return new Intl.NumberFormat("en-IN", {
    style: "currency",
    currency,
    maximumFractionDigits: 0,
  }).format(amount);
}

hasPermission

Simple role-based access check for permission-gated UI.

function hasPermission(user, permission) {
  if (user.role === "admin") return true;
  return user.permissions.includes(permission);
}

Let's Connect

Interested in working together? Reach out — I'm always happy to talk about engineering.

This opens your email app with the message pre-filled — nothing is sent from this page.