Hello world 😊
After 4 years of building and maintaining software products, I decided to share a list of stuffs I would like to have known at the time I started programming ^^
1. Working on a new project / feature / technology ? Start with the WHY.. not the HOW
At the beginning I was 1000% motivated to try so many stuff 🔥 ( I am still though 😝 ), but was too focused on the HOW part..
How can I use Angular to develop that website ?
How can I implement that feature ?
Doing so made me only feel like a robot whose mission is to "deliver".
But bruh🤨, delivery is the only goal -> that's how I get my salary at the end of the month
I know 😩 but wait😏
would going like that be fun in long-term 🤔 ?
So what if I instead put myself in the POV of the client. Starting with "Why do we need that feature?"
That may trigger a new conversation/debate like:
Client: we need that in order to have more visibility on our products
Dev: Hm ok I get it, that feature will take 2 weeks to dev. Also what about adding an email marketing + notifications ?
Client: sounds cool ;) let's brainstorm that during our next planning
2. Everyone can mentor 👨🏻🏫
Mentoring is not about only sharing knowledge to the other, but I also learned a lot in the process.
That helps the team to have common ground process and participates in a better team cohesion.
That has contributed to break my shyness too 💁🏽♂️
3. Stop losing code 🙅🏼♂️
Yep -> several times during my seasons at the university, I "lost" codes due to a folder deleted or a saved file without history ( so not able to recover old versions ).
Hoya..what if you could go back on time ?
I would have included Git in my main tools.
It allows us to commit / push my codes into the "cloud" and keep track of my changes ( no more code lost 💪🏼 )
Git is my everyday bae ❤️..Git may be your bae too
4. 👀 More emphasis on tests
Old process: I develop a feature to add items to cart in an e-commerce website.
Let's deploy my changes to the preprod environment.
Waiting for the QA to test...👀
⌛️ Two days later:
QA team : ⚠️⚠️⚠️⚠️⚠️ Mayday mayday 🚨 the app has crashed
Me: sorry 😐 we were counting on you to test all possibilities in that new functionalities :( we're gonna fix and deploy for you to test
QA team : are you for real ? 🙄
Next-gen process: Write tests ^^
Let us not depend on a QA team to test all our code..we are not only developper but first of all -> OWNERS of the project.
Indeed💭 but what is the solution ?
I would like to have known the importance of tests at the beginning to avoid wasting time testing manually each features.
Check out that interesting article on Unit Tests: https://dev.to/codingpizza/what-is-a-unit-test-1e1m
A small snapshot showing green tests ( using Jest ) here before committing my code 😍
we are all learning, I missed a lot of stuff but doing errors is just a part of the process ;)
What would you want your younger self to have known several years ago ?
Peace ✌🏼 and stay tuned for the part 2 😃
Top comments (11)
I agree on the first point of focusing on the why and not the how. I think it’s a generic problem because as software engineers, we try to have a mental picture of how we would solve a particular task. Most times we have this connections in our head and a lot of questions keep on popping up. I try not to dwell on the why too much, I try my best to develop one feature at a time. At the end of the day, the how will show you how it’s supposed to be done.
"I try not to dwell on the why too much" yes good one ^^ Indeed, it's still good to know why we are implementing a new feature but not worth to waste too much time at time at it 🙅🏼♂️
Thank you @fiatinnovations 😃
Patience! with others and especially with yourself. This will allow for everyone to feel safe and bring out the best from both sides
As I am starting my programming journey this is helpful.
Thanks for your sharing. I'm into this process now.
Great points, I just started a couple months ago so opens my mind read that kind of tips.
a big +1 to the "Do, do, do" part 😍 -> not wasting too much time thinking but instead start and learn through errors ;)
Thank you @dirkecker 💪🏼
Great article! thank you.
no prob ^^ all the best Ali 💪🏼