3

I joined as a frontend developer in a large company. When I first came into my team, they handed me a project for supporting legacy code and developing new code.

After some time, they told me to deploy the project to one of the environments, without giving documentation of the proper deployment process that is established in the team. I worked with a senior developer on the team who explained the deployment steps to me and I deployed it the way he described.

After i deployed the manager of the team asked me about the steps I took to deploy my code. After I described my steps, the manager started blaming me for not taking the right steps to deploy the project. The team consists of 7 developers and the manager.

I am interested in objective opinion about mistakes of both sides and advice about what should be improved in future (or maybe it would be even better for my career to switch the team). Thanks!

P.S -- "Who is to blame" - some user edited my question title and wrote this, this is not my actual intention to blame someone, i understand that both sides have their faults in this situation.

  • 1
    Who is the "they" that handed you the project and told you to deploy the code? Did you ask for documentation for how to deploy the code? – jcmack Jan 15 at 0:29
  • 1
    @jcmack "They" is the manager and the team-leader. I asked our more experienced developer for how to deploy it, he explained me and i took these steps. – John Doe Jan 15 at 0:31
  • in software "YOU" are always to blame. the (tiny) problems you described are nothing. all software is an uphill battle, and such minor hiccups always exist. you have to overcome these. – Fattie Jan 15 at 12:51
  • Yeah, this is a bad situation. When things go wrong, the focus should be on solutions, not blame. – Richard Says Reinstate Monica Jan 15 at 13:33
  • @JohnDoe if you don't think the title matches the intent of your question, you should edit the question (link right below the text) and change it to what you want it to be. I agree, "who is to blame" isn't a constructive question. – dwizum Jan 15 at 14:40
19

Who is to blame in following situation?

I feel like this is the wrong way to start off. If something goes wrong, you shouldn't start by pointing fingers. You analyze what happened, you rectify the situation and put in safe guards to prevent the same thing from happening again.

The manager of the team asked me about the steps I took to deploy my code. After I described my steps, the manager started blaming me for not taking the right steps to deploy the project.

I stated in your comments that you worked with a senior developer on how to deploy your code. When the manager started "accusing" you of following the wrong steps, I would say "I was merely following the steps provided by [insert senior developer name]. What are the correct steps that I should follow?" If there isn't existing documentation on how to deploy properly, offer to write it up for the team so that this doesn't happen again.

  • "Who is to blame" - some user edited my question title and wrote this, this is not my actual intention to blame someone, i understand that both sides have their faults in this situation. – John Doe Jan 15 at 14:48
10

I'd say that looking who is to blame is the wrong approach. Blaming people is seldom the right approach.

From what I gather from your description, what seems to be wrong is that the deployment process is neither automated, nor documented. Deployment processes should not rely on arcane knowledge that is passed on orally.

That's what your manager should focus on, getting the deploy process well documented so that the next time a junior developer does a deployment, there can be no question about what the proper order of execution is.

  • "Who is to blame" - some user edited my question title and wrote this, this is not my actual intention to blame someone, i understand that both sides have their faults in this situation. – John Doe Jan 15 at 14:48
4

I agree with @Abigail's answer, but want to answer the specific question of the OP: Who is to blame?

You are.

I don't mean that in a bad way, but you performed the steps and made the decisions to go forward with a path that your lead later determined was incorrect. There's nothing intrinsically wrong with what you did, you acted reasonably and in good faith. The key point is that you are responsible for your actions.

The best thing you can do is to own your decisions and "take" the blame. You can additionally explain what happened, describe the lack of a clear course of action, and the advice you received from a colleague. It is really important from the point of view of trust, however, to accept responsibility.

No one will trust a person that does things without accepting responsibility for them even if they were "told" to do those things.

1

There's absolutely no question that pointing fingers is not the right thing to do. However...

This is a good opportunity to revise good practices at the workplace. For example, where I work, there's an internal wiki with everything documented that others have to do. This includes (and not limited to), deployment steps, compilation steps, cloning huge software steps, list of available machines and who's using them for what, a list of available repositories, etc.

Such steps, like deployment, should never be an oral thing. That's the problem. So, I guess you should talk to your boss and ask him to establish a wiki page with all this information. You can easily deploy some Wikimedia or WordPress page where people can add content.

The lesson here: Rather than looking for someone to blame, look how to create a protocol for the process so that the problem never happens again. This is how companies gain experience and grow.

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