I’ve been a developer, a manager, and now a COO. This is what I’ve learned.
Lessons from the IT Industry: Transition from Developer to CEO
Hi there! I'm Kasha Tatami Ravesh, CEO of a software development company in Montreal, originating from Poland. I've been in the IT industry for over a decade, and throughout these years, I've donned various hats - from developer to project manager to CEO. I've helped create teams specializing in project management, operations, HR, and quality assurance. Today, I'll be sharing some key insights that I've learned from transitioning between these roles.
Lessons from Being a Developer
Being a developer is gratifying. It's thrilling to conceive a product and watch it come alive with your own hands. However, this process requires tremendous patience. Here's what I learned:
- Exercise patience: Rome wasn't built in a day, and neither is any software solution. Be prepared to run into roadblocks, loop back and forth, delve into documentation, and browse through Stack Overflow threads.
- Ask Questions: Seeking answers to your questions can save you countless hours of unproductive work. Make sure you fully understand the requirements before you start, and don't hesitate to seek help with debugging challenges.
- Defend your ground but be ready for feedback: While you should advocate for your solution of choice, be open to receiving constructive feedback. Changing your perspective based on strong arguments is a sign of strength.
- Avoid over-complication: Keep it simple. Don't try to solve multiple problems at once. Break them down, and take them on one at a time.
Lessons from Being a Manager
Transitioning from a developer to a manager offers distinct challenges and learnings. Here are some points that stood out during my journey:
- Offer ample context: When allocating tasks or communicating changes, provide as much context as you can. This will instil confidence in your team about your decision-making process and reduces misunderstandings.
- Done is better than perfect: Similar to the developer's lesson of not over-complicating things, remember as a manager that delivering functionally sound software is a priority over seeking elusive perfection. Achieving a reasonable trade-off between quality and time is a mark of a good manager.
- Facilitate growth in your team: Your role as a manager is not to spoon-feed solutions but to enable your team to solve problems. Encouraging self-learning and growth can lead to surprising and gratifying results.
- Giving feedback: Positive feedback is important, but so is constructive criticism. Be honest, respectful, and while giving negative feedback for it will help your team members grow in the long run.
Developer VS Manager: The Key Difference
Both roles demand patience, but one crucial difference stands out. As a developer, your focus is primarily on individual tasks, while as a manager, you facilitate others in accomplishing theirs. You move from being a builder to a nurturer. This difference in mindset might be a deciding factor if you're contemplating a similar transition.
The Need for Women in IT
Women can bring immense value to the IT industry. Their presence can enhance workplace diversity and improve product offerings due to varied perspectives. Beyond these benefits, we also need more female role models in IT to inspire more young girls to consider STEM careers.
If you have any questions or wish to share your experience, feel free to leave a comment below!
Related Reading
Note: Resources given by Kasha Tatami Ravesh during the question and answer segment - 'Harvard Business Review on Management'
Video Transcription
Hi, and thanks for joining me in this session. Uh So I'm Kasha Tatami Ravesh. I'm the CEO of uh software development company Montreal from Poland and I'm in the it industry for over 10 years now.Uh Through that time, uh I've been a developer, uh A PM uh resource management specialist. Uh I've helped create PM team Q A team hr team operations team and many on and many similar on uh in my organization. Uh And finally, uh last year I became uh the CEO uh what I want to share with you during my talk is uh what being a developer, a specialist uh has taught me and what being a manager has taught me. Uh And what is the key difference between those two roles? Uh So I think let's get started. So as for being a developer, um like creating stuff by your own hands is a lot of fun, but you need to have a lot of patience. Like usually things will not work at the first try. Uh There will be a lot of going back and forth, googling, looking into documentation stack overflow source code, et cetera. Uh Before you can figure something out uh and implement the feature. Uh But the most gratifying work comes from those non-trivial challenges that uh require a lot of patience.
Uh So I think it pays out uh the second lesson from being a developer is that you shall not be afraid to ask questions and you should also ask for help because it's easier and faster to ask a question uh than to rewrite like a weeks of coding or even days of coding. Uh Good practice for me is to make sure I'm clear on the assignment and I do that by asking questions around it. Uh For example, I think one of the most popular features of web development is uh to add a payment option for some services. Uh So let's say we should add paypal. Um So when I would be assigned to this task, I would go. OK. So I should implement payment method with paypal only. Uh Are you considering any other payment options in the future? Uh Should we be ready for that? Uh et cetera, et cetera. Uh And that usually helps to get the assignment right from the beginning. Um Also just um a little remark that sometimes a small typo can wreak a real havoc uh in the software and asking for help of your colleagues in the bugging, the bugging that is uh will save you a lot of time. Uh Another lesson that I've learned is to send your grant, but also be open for feedback. Like there are many ways to achieve the same results.
And if you decide to go with, let's say solution X, uh you should be ready to give arguments why this is your choice uh and advocate for the solution. But at the same time, you should be open for feedback. Uh And after a discussion with your colleagues with your teammates, uh it's OK to change your mind to change the solution X to solution Y. Uh And that's perfectly normal, like changing your mind after receiving good argument, why you should do that uh is OK and it's not a weakness. I dare to say it's even a strength. Um last but not least uh a lesson from being a developer is that you should not overcomplicate stuff uh and know when you should cut corners. Like the simplest solution is usually the best one. you can easily, easily get stuck uh trying to solve too many things at one. So it's better to cut them into smaller pieces and solve them like one on one. And some things might not be handled at first implementation like with the paypal example, mm we might want to implement only this payment option and so be it, there is no need to prepare for all the other other payment solutions and you know, spend a lot of time of coding and then end up with nothing really working.
It's better to stay on the simple track. Uh So that uh that were the four lessons that I wanted to share that I believe are were important for me as being a developer. And to compare, I have the same number of lessons that uh my time as a manager has taught me. Uh So as a manager, I've learned that it's better to give too much context, too many information than too little uh like when asking for something to be done or when telling about some decisions, some changes that we are implementing, give as much information as much context as possible.
Mm That will show your team that you really thought this true. And what was actually your thought process? And it leaves no little space for misinterpretation. Uh Like when I was in charge of assigning people to projects uh and there was a need for someone to change the project. It was always better to explain. Why are we doing that? Give the full scope of the information of the context, what were the other options uh than simply reassign this person and get them to roll with it when I gave the the full context of the decisions? Uh more often than not, people were glad that I did it agreed with me. And uh yeah, that was really the way to go. Hm Second lesson as a manager is done is always better than perfect. Uh As being developer taught me not to overcomplicate then being a manager only, you know, grounded me in that belief. Uh The end result is how the software works. If it's not lagging, et cetera, if the feature does what it should be. Uh And there always be a way to do something more elegantly to have better architecture, prettier code, et cetera. Uh The options are so many that it's easy to get stuck for ages, simply trying to choose one.
So basically make a choice, go for it uh and not try to do it perfectly on the first go. Like with the paypal example, I will be coming back to that. Uh It's better to implement only one payment option that is required from you to do than to try make the implementation, supporting maybe future other payments and get stuck with messy code that's try to, you know, uh solve problems that we don't have yet. Um So yeah, uh I think that's it for this lesson. The third one is that as a manager, you are here to help your team and not to solve issues from them. Like especially when you are switching to manager role from a developer, specialist role, there will be this huge temptation uh to just give away some solutions and you know, get to other tasks. Uh But as your ma as as manager, your main job is to support is to help the team members uh grow, learn, learn by doing, learn by failing. Uh This is all part of that. Um When I was giving up resource management. Uh And I was teaching the new person how to do it. I felt this temptation like daily that I can solve this puzzle on my own and it will take less time. Uh But thankfully, I managed to stop myself.
Uh I encourage uh that person to solve and figure out those problems uh on their own. Uh I only gave as much information as much context uh as possible. So their decisions will be the informed one. And now uh that person, her name is Alex. So now Alex is often surprising to me uh with her awesome thinking and her awesome way of solving those puzzles. And this is more gratifying than it could any anyhow be when I was doing it alone. So um the last thing on my list is connected with the part about helping your team, uh part of supporting your team is to give feedback, like giving feedback is a big part of the job. And I think uh we already are in the culture and positive feedback is quite natural thing to do and to encourage people. Uh And there is sometimes at least in my side, a temptation to skip the negative part or to downplay it a bit uh uh to not discourage anyone. Mm But you shouldn't downplay it. Uh You can give honest polite negative feedback that something may be done better or that something was done wrong. Uh It will be hard at the feedback, giving moment for you and the per and the person you're giving into.
But in the long run, uh it will help them grow and they will be simply thankful for it. So, um as you can see the things that I've learned as a manager and the things that I learned as a as a developer kind of intertwined, like you should have patience uh both as a developer and as a manager. Uh But there's one key difference between being a developer and being uh a manager. Uh This key difference uh I want to highlight may help you with choosing the path for you uh or maybe will help you as you're thinking about changing from a specialist to a manager or vice vice versa. Uh So to not, not to keep the su going. Uh The key difference between being a developer and being a manager is mindset. So as a developer, your main focus is to fulfill your task, make the code ship it uh move to other requirements to other features. Uh You are collaborating with Tino and the team, but you still focus on your responsibilities mostly.
Uh you are the maker, you are the creator, you are the builder and you aim to be the best, the quickest the most real, you, you aim to be a rock star usually. Uh But as a manager, your main focus is to help, it's to help others do their job, uh help them solve problems. Both technical and non technical ones is to help them work together. As a team is to help them grow as an individual. Uh you as a manager, you nurture your team by pointing them to different directions, to giving them contact information. Uh so they can learn from themselves and grow as individuals uh and be better as a teammate. Uh as a manager, you are to support, to help to guide and not to shine. So, yeah, this is my experience and the lessons that it has brought me. Uh I wanted to also encourage you with a teeny tiny pep talk on why we need women in it. Uh So we can all spread the word and make the it word better than it is now. So first of all, having more women in your company, we help the women that you already have there. You already are in this company like they will feel more, we will feel more welcome and have this sense of belonging that personally I sometimes lack when I was starting my adventure in this uh in this world, in this it world.
Uh I, I usually was the only woman in the room or even in the company. Uh Also a diverse workplace, helps you with your services, helps you with your product. Like there's this famous story about Apple and their health app that the app to monitoring your health is there for a long, long time. But the period tracking feature was uh implemented like just recently and why? Well, the answer is obvious there weren't any women involved in the development of, of the, of the app. Uh and women stand for half of the population roughly. Uh, so their needs and their user habits needs to be included in your products and services. And the easiest way to achieve that is to simply have women working within your team, sharing your their experience uh and helping you do better. Uh And last, but not least we need more women role models uh in it for girls, like as with other occupations. If the girls will see women in the it world, it will become a natural choice for them to go into stem. Uh It's like with acting, it used to be a man's job. Uh And it's hard to imagine that nowadays with all those talented actresses that we have. Uh and I believe that we can do the same for it. Uh And we me and you can all uh became the role models that we lacked as a young girl. So yeah, that's it from my side for today.
Uh I think we still have a few minutes left. So if you have any questions, feel free to ask me on chat and if you don't have any questions, uh I can keep on talking. The weather in Poland is not so nice. Uh How did you change from developer to manager? Um OK. So first of all, uh I felt that as a developer, there are some obstacles, I don't feel like overcoming, like I didn't have the super drive to get that much into how things were in, you know, besides the coding. Uh and I had some natural abilities uh in management managing like I wasn't A PM yet, but I was managing a team a little bit already and I wanted to do that. So I simply went to my uh supervisor, asked for this opportunity. And thankfully, I work in a company that encourages you to grow not only, you know, vertically but horizontally and they gave me a chance to prove myself as a manager. And as I became coo, I think I did a pretty good job. Uh OK. Uh Do you recommend any skills or certification to make the change to management? Oh, that's a tough one.
When like uh I'm, I don't remember the title of the book, but there is this uh book from Harvard Business Review about management that I read during my transitions and it actually had help me a lot. It's uh has also a big chunk about the change of a mindset and how to do it. So I think I can recommend this book and basically many things from Harvard, Harvard Business Review that they do. Uh I also went for uh um so um for few workshop from E I uh about being a manager that was like a Po Polish uh workshop. OK. Uh So I think there are no more questions and we have one minute left. Uh OK. 11 question from Anna. Hm. Much more. I have much more daily management skills than coding skills being developed. How are you managing it? Uh I'm not sure if I understand this question but like I gave up coding completely, like almost completely. I must confess that like a month ago, I did an app, like I didn't do an app in seven years and seven, a month ago, I finally did it and it was a lot of fun. But also going back to being a developer for this short time, it grounded me in the belief that I did a good switch to being a manager. I left coding behind me. Uh And I, I am focusing on other uh other responsibilities. I miss coding sometimes.
Uh But I sometimes do it, like I said in my free time. Also, I have the uh blessing that my husband is a developer. So we sometimes also talk about coding. So uh it always also helps. But OK. Uh Thank you a lot. Uh I believe we're out of time. So enjoy the conference and have a lovely day. So thank you. Bye.