Engineering Process

Solving Software Issues

Problem

Delays

  • Failure risk
  • Increase projects cost

Turnover

  • Hurts moral
  • Increases HR costs

Technical Debt

  • Increases development time
  • Lowers product quality

Solution

Consistency

  • Overhire for redundancy
  • Grow talent

Retention

  • High-caliber team members only
  • Raise level each hire

Quality

  • First principles development
  • Consistent culture

Run the Business

Product Maintenance Steps

Define

  • Customer Issues
  • Issue Detailing & Cases
  • Acceptance Criteria

Develop

  • Prototyping, Wireframe and Design (When Required)
  • Task Breakdown
  • Diagnostic & Solution design
  • Execution
  • Validation & QA Testing
  • Deploy

Grow the Business

Product Development Steps

Scoping

Product Ideas

Customer Use Cases

Upstream

Prototyping & Wireframe

Engineering Specs

Business Review

High Fidelity Design

Downstream

Engineering Details

Tasks Breakdown

Coding

QA Testing

Deliver & Deploy

Target Engineering Standards

Minimum customizations

As much “on-off” features as possible – use of feature flags

Feature Roll-out via AB testing – we must build this capability

Documentation must be part of the delivery – Customer docs is an asset and a must

Test automation must be part of the delivery

Backwards compatibility always in mind

Development starts once we have available engineering details

We must have Regression test scripts when doing manual QA for repeatability

Web Development In 2024 & 2025 Is Completely Different

Overview Of Changes
  • AI Copilots
  • TypeScript (+Zod)
  • Tailwind CSS
  • Next.JS App Router
Fundamentals

HTML

  • Semantic HTML
  • Forms

CSS

  • Box Model
  • Flexbox
  • Grid
  • Animations & Transitions
  • Responsiveness (media queries)

JavaScript

  • Variables (var vs let vs const)
  • Arrays
  • Objects
  • Functions (arrow vs traditional)
  • Fetch API
  • Event Handling
  • Asynchronous Code (promises, async / await)
  • DOM / Web Platform (events, manipulation)
Frontend

React (Vite)

  • Components
  • Props
  • Hooks (UseState, UseEffect, Custom Hooks)
  • State Management
  • (Context API vs Zustand vs Redux)
  • Styling (Tailwind CSS)
  • Patterns & Best Practices (reusability, state in URL, etc.)

Typescript

  • Basic Types
  • Inference
  • Type vs Interface
  • Generics
Backend / Full Stack

Next.JS

  • Routing
  • Server Components
  • Server Actions
  • Caching
  • SSR / SSG
  • Patterns & Best Practices (data fetching, server-side validation, avoid leaks, etc.)

Separate Backend

  • Node.JS (Express, Nest.JS)
  • Python (Django)
  • Ruby (Ruby on Rails)
  • Go

Databases

  • SQL (Postgres, MySQL, SQLite)
  • NoSQL (MongoDB)
  • ORM (Prisma, Drizzle, Mongoose)
  • Hosted DB Services (Supabase, Firebase, Vercel)
React & Next.JS Ecosystem
  • Shadcn UI
  • Zod
  • React-Hook-Form
  • Framer Motion
  • Authentication (Next-Auth Vs Kinde)
  • Payments (Stripe, Kinde)
  • Hosting Providers (Vercel)
  • Git & Github
  • Mobile Apps? (React Native & Expo)

Good Culture

Check

Promotions based on milestones

Check

Generous pay increase schedule

Check

Enable self-direction / self-management

Check

Leadership training and responsibility

Check

Interaction with stakeholders

Check

Paired coding / spooning sessions

Check

Individual and Team bonuses

Check

Team code review sessions

Let's Talk