The most important things I learned from my former colleagues - part 2
Clear communication, always ask questions, check what you really should care for (hint: it's not the shiny tech stack) and always be nice. My colleagues taught me alot. Here's part 2 of my learnings.
This blog post is part 2 of a series. Make sure to check out part 1 aswell.
What you can learn from this blog post:
- Hesitate to ask a question? Do it anyway!
- Communicate clearly
- You won't get along with everybody, and that's okay
- We care for the user and their problem (not for the fancy new tech we used to implement this feature)
- Be nice
Hesitate to ask a question? Do it anyway!
We all know that feeling. You're sitting in a meeting with a bunch of people. Someone explains the details of a complex topic. They ask, if everyone understands the topic. Everyone nods.
But you don't understand and you have a lot of questions. But you really hesitate to ask. Everyone clearly signalled, that they understood it. So why even bother?
And, if it's a "stupid" question, you don't want to embarass yourself. What if the problem is just that you haven't listened well enough?
Forget about all this. It doesn't matter. If you still have questions and don't understand something well enough, ask! Ask again. And again.
Because if you're the one who is implementing this feature later and you don't understand it, that's the real problem. Then you really wasted a lot of time.
In most cases, everyone didn't understand everything. And they will be so thankful to you, that you asked this question. Because it's hard to admit, that you have a hard time following along.
So the next time you hesitate to ask a question - do it anyway.
Communication is hard. In my opinion, for being a good developer your communication should be a number one priority. Communication is one of the topics where a lot of things can go wrong.
So communicating clearly and improving your communication steadily is so important.
By clearly I mean being honest. Tell your team members what your current status is. Tell your manager when there is a problem. Don't tell them you can solve it in five minutes if you don't know yet what the root cause is.
Don't wait till a few hours before the deadline to communicate that you can't make it.
Good communication solves problems before they arise and prevents bugs and errors. That's why it's a desirable goal.
You won't get along with everybody, and that's okay
We as humans want to be liked. We want to belong. We want to become a part of a group or stay a member of a group and we do a lot for that goal. That's our nature.
It's even harder when you notice that you're having a hard time dealing with someone. You have different opinions, you always disagree, you always favor different solutions.
Deep in your heart you want to be on the same page with this person.
But you won't and can't get along with everybody and that's totally okay.
If you enjoy my writings and learn something from them, you can consider to support me! One way of doing this is just as easy as buying me a Coffee!
Thanks so much! This means a lot to me and is a great way to support my work.☕️ Buy me a coffee ☕️
Sometimes you need people who question everything. Even if it's annoying to you it can have a lot of benefits for the development. Rethinking ideas is a valuable aspect of product development.
If you happen to find such a person, don't despair. Be glad, it's a good thing!
We care for the user and their problem (not for the fancy new tech we used to implement this feature)
If you break it down to one thing that we're doing in web development, it's we're solving problems of people. We have users whos lifes we want to make easier and better.
That's what the job is for. That's the only thing we should care for.
Of course we need to make decisions on which tech stack to use, how to implement certain things. We should make these decisions based on the team members we have. The knowledge we have. But all of these considerations should point at the user.
Imagine you have three team members who are proficient in TypeScript,. This means you can develop this certain feature pretty fast with a high quality standard. Which means the user will benefit a lot from it.
Using another programming language because everyone is using it right now would be a really bad decision in this case.
You would have to learn the language. It could be of bad quality because you're not experienced and it would take much longer. And, in the end, the user would not benefit from it at all.
So always remember: we care for the user and want to solve their problem. Every decision making should be geared towards this.
I thought about a long explanation with a lot of different examples of why being nice is so much better than yelling, being angry, blaming someone. But this should be common sense.
Being nice opens way more doors and has infinite benefits. And in the end it's the one thing that does not harm anyone. Just be nice.
I hope you enjoyed this post and learned something new. If you have any questions, feel free to reach out to me on Twitter ↗ or via Email ↗.
If you want to support me, you can buy me a coffee. I would be very happy about it!☕️ Buy me a coffee ☕️
I wish you a wonderful day! Marco