I started my career as a data analyst since then I have worked in many positions like data engineer, full-stack developer, data scientist, project manager, tech lead, and currently as a CTO. Let me share with you some of my experiences which I think might be helpful for IT workers. Of course, it's might not true for you, if it is not, tell me what you think, I'll be happy to read that.
Skill
Let's begin with skills, whatever you are working on, keep going forward, seek knowledge. Master your programming languages, learn best practices, structures, patterns, get certifications,... You want to advance in your career you must be an expert if not the best when it comes to your professional skills, you want to be a wise man in the meeting, not a fool. I don't think I need to explain much about this.
Attitude
You gotta be a good guy. Think for other people, be happy, be energetic that's what you want your colleagues to be so you must be one first. That's easier to said than done, take some small things to practice and improve yourself over time. Let me give you some points to observe and think about.
1. Learn to criticize yourself, if something bad happens don't deny it, don't blame other people. Think for yourself, if there was anything you could have done to make it better. If you don't make mistakes you don't learn anything.
2. Put yourself in someone else position to think. If you are a leader and see a staff of yours come to work late for the last few days, don't mad at him, ask him if everything is ok, how is his family, tell him that you are worried about him then he'll open with you and tell you the reason.
3. Be easy with people, before you say something, think about how would you feel if you are the listener if that's something that makes you unhappy or angry then finds another way to say it.
Deliverability
You have to have a good roadmap and deliver in time.
When you start a project, start with an MVP (minimum viable product), the simplest prototype you can make. There are a lot of products you develop that have less than a thousand users or not even make it to the market at all. Your company needs a working product as soon as possible to demo to customers or raise funds or adjust the initial idea. Don't think that you are working at Google, Facebook, or Apple, the first version of your product doesn't need to serve millions of users, try not to complicated it, or over-optimize it. When your product gets more attention from the market you can improve it later.
If you start with a product or a feature, think about its meaning of being, if it's better than other similar products available in the market, or do people need it at all. If it's just something cool or you want to show off your technologies then you are better not do it. Think about what people need and find or create a technology to help them, to make their life better, to solve their problems. Don't start with cool technologies and try to think about what you can do with them.
Don't ask too much, many of you might not agree with me on this point. If you are a senior or higher you are supposed to give solutions. I've seen many experienced developers keep asking for small things, like "Do you want this picture left, right, or center?", "I have 3 solutions for this problem which one do you like ?", "You want to put this information on the web, where do you want to put it? how do you want to visualize it?". the point I want to make here is if you are a senior or higher you have to learn to make decisions. Base on your experiences, pick the best solution to implement and adjust base on feedbacks.
I think I will stop this post here, I don't want to make too many points that might overwhelm you, those are things that I think quite important, easy to observe and practice. Tell me what you think, do you like to read more posts like this?.
Comments
Post a Comment