Home/Learnings/how-to-approach-a-project

How to Approach Projects ?

Whenever it comes to creating a project or making a project, the most crucial part of it is to have an approach to it. Many a times, what developers do is that they directly start creating the project, rather than understanding what the requirements of the project is.

The way I approach a project is:

1. Initial Planning

2. Technology Selection

Based on the flowchart, NOW is when I choose the tech stack to start the project. Now this step also has some conditions while making decision on:

Backend Selection

Frontend Options

Database Choices

API Testing Tools

3. Design Phase

After I am done choosing my Tech Stack, next step is to start with the designing the frontend. For that I usually go for either Figma or Penpot (Open Source Figma Alternative)

4. Development Process

Now this is where a little debate happens, some directly go for frontend development while some start with backend. Don't worry nothing is wrong here, you can start with anything you want.

I personally choose to start with creating the backend first as I think this particularly takes a lot of time developing and most importantly TESTING 😏😏.

I use TDD approach for this which is Test-Driven-Development i.e. create an api → test it with multiple test case you can think of, then move forward with the next one.

5. Frontend Development

Once backend is created, now start with designing the frontend. Always prefer using reusable components in your website so that:

Start creating the frontend using mobile first view as it is very important to have your website both desktop and mobile friendly. Using this approach reduces a lot of your time in development.

6. Integration & Testing

Once the frontend is completed, next task is to start integrating the APIs. This is where all the crucial aspect of any website is implemented.

Once APIs are integrated, next step is to do a thorough testing of the integrated APIs and UI. If the results are as per your requirements, you are good to go for deployment else debug the issues and solve them until and unless you're requirements are not met.

7. Deployment

For Backend deployment I usually prefer:

For Frontend My only way to go is vercel.com

Once this is done, your project is completed. Congratulations 🥳🥳

Just a small reminder, this approach can be changed based on the scalability and use case of the project.