Hello! What's your background and what do you do?
My background is everything web related. You could say that I am deep stack: I feel comfortable from fine tuning aspects of the web server (including its hardware and OS) to fiddling with the latest JavaScript framework and every layer that comes in between.
I started to program at the age of 16 when I did simple HTML webpages. Back then, I did some freelancing gigs as a student and got into Linux networking and computer security. This was in the late 90s. After studying digital hardware design at the University of Applied Sciences in Hamburg, I started to work as a PHP programmer at an NGO. My Linux passion brought me to my next job, being the Linux administrator for a web engineering firm. During that time I discovered Ruby on Rails and started some side projects with it, eventually returning to the NGO with my new skills. Gaining ever more expertise in Ruby on Rails, I left to join a startup that was frounded by some friends of mine. At this job I gained my first experience leading a small team of developers while still actively coding. After a few years I went back - yet again - to the NGO and lead the IT department, which included some hefty development efforts. Although I still enjoyed the technical challenges, I found out that leading people in the tech area is something that I really enjoy and so after yet another few years at the NGO, I switched jobs again to my current job, to become an engineering team lead at XING, a career oriented social network here in Germany.
How was your transition from software development to management like?
The process was slow and nothing that I had planned for. I always liked to take on responsibility towards others. Through extensive volunteering at a youth organization organization, I was put in charge of leading seminars for 40+ students and a team of around 10 volunteers in my early 20s. This taught me a lot about leadership, group dynamics and taking decisions with only a limited amount of information while still teaching the students the content that they signed up for. I took a liking in this and started to take over more responsibilities in my professional life, pushing my superiors about things I cared about. Most of the time I got the feedback that I should take of these things myself if I wanted to and thus I gradually turned into being in a leadership position.
My last transition, to fully move away from coding and into management, was a deliberate one. I didn't enjoy coding as much any more as I used to and noticed that I took more joy in managing people. At my current role as an engineering manager, the main focus is on people management.
What does your day-to-day work look like, and what motivates you to do it every day?
I currently manage 12 people. They are from various different disciplines (iOS, Android, Web and QA) and work on different projects across two different project teams (we are working in a matrix setup). My day usually starts with time for self organization. Taking a look at my inbox, at Slack and the calendar in the morning, thinking about the meetings which will happen that day. I note down what will be important for each meeting. I respond to messages and write down the ToDo's that come out of these asynchronous conversations. After that, my day starts, attending meetings back-to-back - especially now in the full-remote setup that we have gone into. The meetings that I have are a mix of 1:1s, tactical meetings with other mangers from my division, POs and agile coaches and meetings to discuss certain aspects of our work where I drive tech topics together with the engineers.
On top of the project and team related meetings, there are meetings to drive forward topics within the whole engineering organization together with team leads and directors from other areas of the company.
At the end of the day I tend to have less meetings or more casual ad-hoc ones. This is the time I reserve for myself, catching up on the items on my ToDo list, writing down thoughts for others to review, working on long term projects and generally letting the day fade out. This is also the time where I work on my leadership skills, usually one afternoon a week. Here I read posts and articles I stumble over throughout the week - usually from my Twitter feed where I follow other engineering managers - and I try to find out if the ideas conveyed in these posts and articles are something that I can incorporate into my leadership style.
What are the biggest challenges you've faced so far? What did you do to overcome them?
My biggest challenge in the beginning of my current job was to find out how near or far I need to be from the everyday workings of my teams. It's the first job where I don't write code directly related to the product any more. Since the engineers I manage work in multiple technologies and in multiple team setups, this decision was taken from me. I couldn't get involved with the everyday things like the implementation details of a ticket. I had to learn that I don't know what they are working on in detail most of the time which turned out to be a good thing. In my experience, engineers like to be given freedom which translates into trust. Not knowing and not wanting to know the implementation details of a ticket or when a ticket is being worked on is a good thing in this regard, but it took some time to accept that this is really a good thing for me (as I have less things to worry about) and for the engineers (as they gain the freedom and autonomy that they like).
Of course not knowing exactly when, how and what the engineers are working on in detail will lead to problems at some point. These problems come up at times, when an engineer made a bad choice in timing or a bad choice during the implementation or testing. This can happen at any point. Of course these situations could have been avoided by micro-managing the engineers, always knowing exactly what they are working on, what the details of the implementation are and raising flags here and there to steer them on the course I believe is right. But this is not my style of management. Instead I trust the engineers to make good decisions and prepare to step in and have their backs when things will go bad, knowing that at some point they will.
Luckily I am working with very responsible engineers and I seldomly have to step in when things go bad.
What has been the biggest surprise so far? Something you didn't expect?
One of the biggest surprises is what I would like to call the pendulum of change. When we were changing something about the way that QA was involved in our workflow in one of my teams, we gained speed and overall throughput was faster by implementing the changes in progress - we pushed the pendulum into one direction. Fast forward some months later, the team was disassembled and put back together with mostly the same staffing but working on another project. In this new setup, the previous, traditional approach to QA was implemented "naturally" as a workflow for the new team. The change pendulum swung right back into the other direction.
I have more examples like this, especially if teams assemble new, they tend to fall back on the smallest common denominator to work together, not the one that worked the best in the past. In these cases it feels like I need to do the same talks again that I did before, fight the same fights with almost the same people again. This makes me wonder sometimes why we tend to forget the progress that we made and was a surprise to me, because I assumed that we would continually evolve.
What's the best advice you've received about being a manager?
As a manager there are hectic times where your DMs overflow, your ToDo list expands to many pages and the working day just doesn't have enough hours in it to attend all the meetings, let alone complete all the urgent work. This is normal at times when unexpected things blow up unexpectedly. But there are also times which are really calm, everyone you manage knows what there is to do and you have done a good job clearing out obstacles, so your teams can work smoothly. Enjoy these times, don't fill your schedule with unnecessary things just to keep yourself busy. Regain your energy for the hectic times and invest in yourself.
What do you tell developers who are considering making the switch or new to the role?
Check your motivation why you want to make a switch into becoming an engineering manager. Maybe start with the 5-why exercise (https://en.wikipedia.org/wiki/Five_whys) to find out your real motivation, and be honest to yourself. Find out as much as possible about what it means to be an engineering manager at your organization, it can differ from organization to organization and even within the organization itself in the different branches or departments.
One of the biggest misconceptions still is, that becoming an engineering manager is a promotion after you have climbed up the technical career ladder. It's not. It's a new career with a whole new skillset to learn and you will most likely start with empty hands all over again. Great engineering managers don't necessarily need to be engineers first, in fact, sometimes it's better not to know the details of the tech in order to ask the simple but effective questions to move a project forward, let alone move someone else's career forward.
Final call to action! Where can we go to learn more about you?
I occasionally post things on Twitter about personal projects and my opinions, find me there: @zeitgeist_y2k
Of course you can find me on XING: https://www.xing.com/profile/Christoph_Eicke2/
And I have a store where I currently sell old iPhones in a frame: https://www.hardwarekunst.de.