Hello! What's your background and what do you do?
Like many developers, I'm self-taught. I have no Computer Science background whatsoever (although I'm always working on improving this). I have a bachelor degree in Commerce & I wanted to become a professional football player (Soccer for American readers) and I actually played as a semi-professional in lower divisions in Egypt.
How was your transition from software development to management like?
The transition kind of happened naturally. I was always considered the lead (officially and unofficially) in most of the places I worked at and the go-to person when someone had questions about front-end, quality, hiring, planning, etc...
But especially at Lightspeed, the transition happened naturally, when I joined the eCom team in Amsterdam I was the first dedicated front-end developer. Part of my job was to build a front-end team and more importantly a front-end culture within the office. Now I lead three other front-end developers in the Amsterdam office. Just to clarify, I'm not officially a manager, I do some managerial tasks (1-1s, planning, etc...) but it’s like 70% tech lead / 30% people management. I was offered to move to the managerial track but I declined, I didn’t feel like I wanted to give up coding just yet because I still have this hunger to learn more tech generally.
What does your day-to-day work look like, and what motivates you to do it every day?
Every day is different. I usually have at least one meeting a day. So in the morning, I check my schedule and plan the rest of the day, especially because I'm still an IC and have tasks and things to do.
Generally, a day starts with a stand-up, every two weeks I have 1-1s with the rest of the front-end team and weekly we do have a global front-end meeting with all other front-enders in the company at our Montreal and Ghent offices. This is something I co-started with my colleague Guillaume in Montreal to bring teams together instead of working in silos.
I enjoy automating tedious tasks/grunt work to help my team's productivity and also to see them improving in their careers.
What are the biggest challenges you've faced so far? What did you do to overcome them?
I'd say feeling productive since many of the leadership/managerial tasks can’t be seen or felt. Sometimes I end up perceiving myself as very unproductive. For instance, on some days I have 2-3 meetings and I don't write much code, so I go home and feel like that day was wasted. But eventually, I see that these meetings have unblocked my team or enabled them to be quicker, more productive and happier and I realize that my perception was wrong.
What has been the biggest surprise so far? Something you didn't expect?
I would say dealing with people, especially non-technical. I'm an introvert and I had this naive idea that when I work with computers I can just avoid interacting with people, but I was so wrong. The more you gain experience and grow in your career the more you will have to deal with people. This is not easy because every human being is different and reacts to things differently. There is literally no one rule that fits all. My wife helped me a lot in this area as she is a psychologist, so her advice has a lot of value when it comes to dealing with people.
What's the best advice you've received about being a manager?
Unfortunately, I didn't have enough managerial/leadership training or mentorship. But 4 years ago I had a quick leadership training while I was working at dubizzle and one thing that stuck with me was that what you hear, is not necessarily what others hear too. So first, be a good listener and second, understand how to send a message in a way that the other person will understand it in the way that you want.
What do you tell developers who are considering making the switch or new to the role?
That highly depends on the company's definition of a manager, but generally, I would say: be prepared to give up coding either completely or a big chunk of it. This one of the main reasons I didn't move to management yet.
Also, learn how to communicate effectively, be honest, clear & straightforward.