While brushing up my resume for a career move (hey, its been 4 years with the last startup. Its time to move on), i've gone through a humbling experience of actually understood the flow and value of each stages for web development.
The arrogant me of yesteryear always thought that the actual hands down working on the codes as the most valuable part of a project.
But, the same pattern keep repeating again and again in many of failing web dev projects that make me revisit my current understanding on web development.
And the journey was more than make me realise how fool i am.
Yep, the actual hands on coding part is valuable. But it is not more than other stages of web development.
Each stages and its corresponding expert really do put in values in the project that uptimately see the project towards it completion.
If any of project try to skip any of the stage, then the project will start to suffer from many of the problems that plague failing projects.
So, what are the stages? How do a web development project was done from start to finish? Lets go through the stage one-by-one:
This is the stage where the client has a bright moment of actualization on the idea of the website. Sadly, it is not the specific website that spark the moment but usually a pain in the market that was discovered by the client.
The pain, and subsequently 'imaginary solution' in the form of a website or an app is what the client usually refer to as 'the idea'.
This is the things that the client does not want it to be stolen from them. As they see that the idea can not be protected by any kind of measure except its obscurity.
The behaviour then introduce the first challenge in web development: to discuss the idea in a comprehensive environment to explore the many possibilities of it.
Only an experienced and trustworthy project manager (or sales engineer) can steer the discussion and having successfully lay down the foundation and the core of the idea. Client (who at the time being was only recorded as prospect) will only discuss their valuable and unprotected ideas with the person they trust or in no-risk environment.
After understand that pain (trust), then we can understand the reason why all these founders (prospect/client) so obsessed with Non-disclosure Aggreement.
2) Conception (User Experience)
3) Design (User Interface)
4) Coding (Front+Back)
6) Deployment (System Admin)
So, there you have it, the complete flow of web development:
Pre-Conception > UX > UI > Codes > Test > Deploy
As a developer previously who only concern on the coding stage, it really humbling to at last understand each expert values that they bring in into the project.
Which also make me angry (now) whenever a prospect discounting the budget that has been tabled to their own liking.
A good web development project is when the project was delivered on time and within budget. To do that, the first thing that client-developer need to agree is the value that expected from each other.
If the value expectation does not matched, then it spells disasters clearly and brightly.
Better fire the job, before the job become raging fire. :-D