DEV Community

Anandhu Manoj
Anandhu Manoj

Posted on

What is Your coding methodology?

Let's Talk about how you work with your code. from planning to deployment...

Discussion (1)

theoutlander profile image
Nick Karnik

My approach varies from project to project, but for complex projects, here's my strategy:

  1. I spend as much time as needed ensuring that I understand the requirements.

  2. I will not hesitate to repeat questions ten times if I have to because the implications of not asking are worse.

  3. Then, I go to the whiteboard (or my large notepad sometimes) and start drawing boxes and arrows mapping my understanding of the high-level architecture.

  4. I will validate that with either my manager or the customer

  5. Once the high-level diagram is correct, I will transfer it into a flowchart application (Lucidchart in my case)

  6. Depending on the type of project/client, I will then write a development spec calling out everything about the project starting with the requirements, risks, what's in scope, approach, previous work, what's out of scope, test plan, release plan, dependencies, etc. This phase varies depending on the team/project/client.

  7. Depending on the complexity of the project, I will start to think about the libraries/dependencies that I would like to use for the project.

  8. Then, I will tinker with libraries/frameworks that I'm unfamiliar with.

  9. Finally, I will create the project repo, various environments, databases, integrate everything in a CI pipeline, and start creating work items in an issue tracker.

  10. Now, it's time to code! The bottom line is that I don't write a single line of code until I'm clear about the requirements and everyone is on the same page.

  11. Deployment is usually a breeze as the CI pipeline is created ahead of time and it helps catch most of the issues as they manifest.