It's all about respect

"Don't waste my time, buddy. You're just a dogsbody sysadmin; I write the software and you merely service it. So just shut up with your petty concerns and do as I say, OK?"
Comment from 

Today I'm going to write about one of the main reasons, in my opinion, why cooperation between dev and ops is not working most of the time: respect and understanding of the other persons job.

dev and ops have different types of work to do, but all have the same goal: bring an application to production and make it as good as possible (depending on time, money, technology, ...)

So in my experience some people mix up their jobs:
  • Some sysadmin believe every developer has to know everything about infrastructure
  • Some sysadmin even think they know how to program and that they could do the job of dev people much better
  • Some developers think they know how to set up infrastructure and how to configure all systems
  • Some developers think ops people should know all about the app without telling them anything
Don't get me wrong there are sysadmins who know how to program and there are developers who know how infrastructure works, but most of the time this is not the case. So when you work together, accept that everyone has his profession and most of the people know what they are doing. Let's straighten another point: It would be nice when every programmer would know the infrastructure and every sysadmin would know enough about programming, but this will not be the case. So when you argue about applications and/or infrastructure just explain the other one why you think it should be this way and not the other, don't just say "No!" (we were there [insert link here] already).

Respect each other and be polite. In my opinion dev and ops have different tasks during a project, which they should accomplish to make cooperation between both possible:
  • ops: Set up a development environment which matches the production environment in the main points: OS, network setup, ...
  • dev: Explain what the app should be doing and what type of systems it is using
  • ops: Make clear what other system exist which might influence the new environment
  • dev + ops: talk about non-functional requirements as early as possible and not two weeks before launch, otherwise it might get really messy
  • ...


Post a Comment