-4

Need your perspective, also this is going to be a long read. If you wish to skip, you can go directly to end where I have written questions.

I am currently an Engineering manager in an e-commerce company. I have been part of this company for more than 2 years now. The e-commerce site works in another country and has different language than english. Our Headquarter is in that country and I sit in another office in another country. All of our Product Managers(or Product Owner) and Business people sit in headquarters.

I started to work as a Technical Lead in this company 2 years back. I was the only person sitting from the remote office while most of my team (i.e. Devs, QA and PO) used to sit in Headquarter. However I use to travel once in a quarter in order to get some KT (knowledge transfer).

As I worked I constantly felt that I was not having much ownership and responsibility. Initially I used to participate in standup but gradually it reduced. The team there were also struggling with the project architecture and slowness of website. The build process also sucked and for me it was getting harder and harder in order to contribute. All the releases and deployments were done from there. I sometimes tried to take ownership but couldn't fulfil as I always got stuck somewhere or the other while working and reached everyone on slack for help. Most of the times I got exhausted, sometimes frustrated as the counterparts didn't understood english well and communication gap was becoming quite often. I was working on features and needed to interact with PO for domain knowledge which was hard for me as sometimes I couldn't understand the context with respect to the country's culture.

So one day I decided to work for another team within that same company. There we were working on technology that I found challenging and loved working on it. But later I found that the same pattern followed. Most of the decisions were taken by the team there and I was just acting like a support.

After 1 year the management at my home office changed. The new management interviewed me and asked for concern I was facing. I clearly told them that things are not being discussed in advance with us, hence we don't know what is the context. All the core task decisions were taken by the team there.

After hearing my part, they aligned me with my counterpart (in headquarter) for weekly meeting, so that both of us were in sync. Things went smoothly for a while but later followed the same pattern. Sometimes I wished to take a bigger responsibility but due to lack of resources, I couldn't commit. Meanwhile I was trying to increase the team size, in headquarters also the team size increased. They hired a few senior people who primarily worked on architecture and performance. They were changing things so fast that it was getting difficult for me to comprehend everything. I tried to spend time to look into their changes but with hiring pressure most of my time was getting into taking interviews and expanding team. At this time I started thinking of quitting the company and to start looking for new job

Since I was hiring, I created a small team of 5 people. During my appraisal review I got promoted to Engineering manager, as there was a vacancy in the company. The salary hike was more than decent. I went to a comfortable zone and stopped thinking about job change.

Now I have a team of 15 people and they are aligned with some business vertical that often require web development. What I am still lacking is below  1. Core Contribution  2. Ownership

I sincerely see this frustration in my team as well. Sometimes they are stuck and it required to connect with people on remote.

Thanks for reading so far, I have tried best to convey my feelings. Please find my specific questions below.

Q1. How to create ownership in technical teams?

Q2. How to create trust with the team that sits remotely?

Q3 In a stage where a company that operates in another country, will it be a good idea to contribute only in CORE things, irrespective of the domain as technical things you can always google and implement and test? More kind of an IC role where you are doing things technical without indulging much in the business domain. Kind of a platform team, for example one such role would be devops etc.

Please add comments if you want to understand more on my query. Thanks Any comment/suggestion will be helpful.

  • 1
    "go directly to the last paragraph."..... "Please add comments if you want to understand more on my query. Thanks Any comment/suggestion will be helpful." Not very informative – David Oct 24 at 13:52
  • @David, I believe OP considers the "last paragraph" as the line beginning with Q1 until the end. – InfiniteHigh Oct 24 at 14:13
  • 2
    "Initially I used to participate in standup but gradually it reduced" that sounds about where things went wrong, so try to re-establish good standups to unblock your team's workdays. More generally, its unclear if you feel that you personally do not have ownership, or if you feel that the people working for you are not taking ownership. – Chris Stratton Oct 24 at 14:47
  • 1
    What exactly do you consider "ownership"? – Thorbjørn Ravn Andersen Oct 24 at 14:57
  • Hi @David, I have edited the question now – Mozak Oct 24 at 17:43
2

You are a manager of a team of 15 at a remote location and communication with headquarters are bad, partly because of a language barrier, partly because of other reasons.

So far, so good, that can happen. From what you wrote, your team's performance is suboptimal because of this problem (e.g. changes from headquarters that you don't understand or can't all follow). Now to solve that, I would suggest that you prepare two things:

  1. Collect data on how much time you and your team waste on average (e.g. per week) because there is no proper communication or you don't have your own projects to work on. Maybe you can also get numbers from your counterpart at headquarters, might be that the programmers there also don't like the situation.
    Translate this into numbers to show how much the company is losing, higher ups fear nothing more than lost revenue.
  2. Compile a list of suggestions and an action plan on how to solve this problem. Maybe you can split the projects up further so that you don't need to know every change done from HQ? Again, make it nice, because higher ups love nothing more than getting a finished solution presented and then claiming it as their own (/s, maybe, not sure...).

Once you have that set up properly, with graphs and numbers and everything, go to the right people and don't leave until things change. The fact that you are talking for a team of 15 and not just yourself gives you quite some leverage here. Of course, make sure to talk to your team first so that you are actually representing them and know what they think.

Expect that you will have to put a lot of effort into getting what ever solution to actually work. It will take time until everyone uses the new procedures and gets used to it, and if you don't make sure that they actually do, chances are that they revert back to the old ways.

2

Q1. How to create ownership in technical teams?

That's the question of the century. In my experience (which is mine and may not be universal) teams seldom take ownership, even when there's the impression they do, they don't. Individuals within the teams do take ownership. If you're lucky and have a great team, all or most members will, if you have a non working team, none will.

How do you "create" ownership?

  1. Identify who is a candidate for taking ownership, do not dump ownership of stuff to people you already know can't or won't handle it.
  2. Provide a safe environment for failure. That doesn't mean failure is ok, that means you set up safety measures so that failure is acceptable and correctable. There are multiple techniques for doing this, from overbudgeting to doing moscow.
  3. Three, provide follow up and support to the candidates, follow up on state often and intervene if things derail (follow up at least once per week)
  4. Make sure you know about the problems as soon as it happens (this will happen naturally if 2 is provided).
  5. With all the above, just dump the selected task / problem into that person and make it clear they own it and they are reponsible for it.
  6. See if they raise up to the challenge.

Q2. How to create trust with the team that sits remotely?

Trust is not created, it is built. So the simplest way is to be patient and deliver... consistently. Even more important, trust is built by listening others and showing empathy towards them, even if you screw up, you can build trust by acknowledging and fixing mistake.

Q3 In a stage where a company that operates in another country, will it be a good idea to contribute only in CORE things, irrespective of the domain as technical things you can always google and implement and test?

In my opinion no. There is a thing called Domain Driven Development for a reason. In order to provide good technical solutions it's imperative to understand the business. If you don't or if your team doesn't, then, even if you manage to take ownership it won't work because you would be taking ownership of the wrong thing. A technical solution is only good if it solves the right user problem, on everything we do, no matter the field, the core is always solving some human problem, that is, solving somebody's problem. If you fail to understand what the problem is and you purposely ignore it you'll end up brilliantly solving the wrong problems.

Not the answer you're looking for? Browse other questions tagged or ask your own question.