How I Work

How I work

I like having a clear idea of what I'm building before I touch the keyboard. Here's roughly how I go about a project.

01

Understand

Before anything else I want to know what the actual problem is. I read through the requirements, ask questions if something is vague and make sure I know what a good result looks like.

02

Research

I look at how others have solved similar problems, check the relevant docs and compare a couple of options before picking one.

03

Plan

I sketch out the solution before writing any code. That means thinking about the database, the routes and what the API should look like.

04

Design

I draw out the database with an ERD and map out the structure of the app. It's so much easier to catch mistakes on paper than in actual code.

05

Build

I write the code. I try to keep it clean and follow whatever the project already has going on. If something feels wrong I stop and think about it.

06

Test

I test what I build, both manually and with automated tests where it makes sense. Edge cases and error handling are things I pay close attention to.

07

Evaluate

Once it's done I check it against the original goal. Did it actually solve the problem? What could be better?

08

Improve

Based on what I find and any feedback I get, I go back and fix things. The first version is almost never the best one.

In practice

Requirements

I read them carefully, flag anything that seems vague and ask before building. Assumptions always come back to bite you.

Database design

I draw an ERD before writing any migrations so I can see the whole picture first.

API design

I think about the endpoints, naming and response format before writing any routes.

Laravel structure

I follow Laravel conventions and keep logic where it belongs. Not everything goes in the controller.

Testing

I write tests for the important parts and manually test edge cases I might have missed.

Debugging

I reproduce the bug first, then narrow down where it's happening. I use logs, dd() and Postman for API stuff.

Using AI

I use AI tools while coding, mostly for looking things up faster or generating boilerplate. I always read what it gives me though and make sure I actually understand it before using it.

I also check that whatever it generates actually fits the project, not just that it works on its own.