Whether you are a junior programmer, an experienced programmer, or a senior programmer, you don’t get paid to code.
You have to stick this in your head because it is something that as time goes by I think is one of the most important things I have learned in my professional career.
We are expected to do things well, to do clean code, to do good tests, that our code is readable, that we do good documentation so that there is evidence of what we have done so that in the end those who come after us can learn it more easily.
However, all this is not what your company or the customer who is paying you wants.
Your client expectations
Your client or your company expects you to solve their problems. And which are these problems?
Well, if you think about it, it’s that you get to grow sales, that you increase conversion, that you increase traffic, that you reduce infrastructure costs, that you offer a better experience to your customers …
In short, that you help achieve the objectives that have been set and that your client has surely shared with you.
Validate hypothesis cheaply
It is not about programming the perfect solution or using the latest framework that is in fashion, NO.
It is about implementing the simplest possible solution, with the lowest cost in time, that allows you to validate an hypothesis.
This initial validation can be done manually and without automating (without doing code) and later when the hypothesis is validated then it can be passed to automation.
If we automate / program without validating previously we run the risk of having to throw away the work done, which is a waste of time and is also a source of frustration for the team.
When you look to solve a problem think about why you want to solve that problem, or why you have been asked to do so. Ask yourself why?
Don’t buy into the idea that “you have to do this because this person says so” otherwise you will be a mere executor and you will limit yourself to executing what they tell you. That is not what is expected.
You are expected to debate, to say your opinion because better ideas will come out of the debate because the bad is ruled out.
Start when the expectations are defined
It is better to waste 2 days doing meetings with all stakeholders to understand what the problem is and discuss what we want to solve than to jump directly to coding and then realize that this is not what you wanted and have wasted time on something that will have to be thrown away.
The important thing is to know how to collaborate with your colleagues, understand the business, understand what the customers want from your business, understand what the final objective of the project you have to work on is … after this you have to validate the hypotheses and guess the last thing comes … coding. Remember this sentence “you are not paid to code”