Globalizing Software Development

Globalizing software development

Today's technology makes it easier than ever to collaborate with people no matter where they are located. Companies now have access to high end talent all over the world and are no longer constrained by their location.

People + Process = Quality

Building not only the right team but also equipping them with the right tools and development practices are critical to developing quality software.

Understanding the complexities of technology

Technology changes every day. Cloud, devOps, mobile and web, we are passionate about technology.

The missing piece to your software needs

With extensive experience in all aspects of software development and all current technologies, we can provide you with the skillset you need.

Sep 5, 2014

Corporate Culture and (Offshore) Software Development

Corporate culture.  It gets written about a lot these days.  In fact I am writing about it because I recently read a good article on Recruiter.com that had all kinds of detail about cost to businesses of disengaged workers and why culture is so important.  I don't know a lot about those kinds of details and I don't know if I am breaking any new ground here but I can share my perspective on company culture in the software development field and also how it extends to offshore development.

Company culture in software development is particularly important.  Software development is as much art as it is science.  It is a creative endeavor that typically requires a group of people to work together in a highly collaborative manner.  It involves people from many disciplines; development, QA, business analysis, IT, etc.  The whole Agile concept is built around groups of people working together closely and sharing ideas in order to build high quality software that adds value to the business.  Nothing is more disruptive to that process than a team that suffers major personality clashes and can't find a way to effectively work together despite having all the necessary skills.

I am not here to tell you there is a right culture and a wrong culture...let me revise that.  There definitely ARE wrong corporate cultures that really don't benefit anybody but that is another topic.  There are many different corporate cultures that work very effectively for their respective companies.  I am aware of one company where everyone is encouraged...no expected to speak up and question things regardless of their position, rank or seniority in the company.  If you disagree with something it is your responsibility to raise your concern even if its your boss, their boss or the CEO with whom you disagree.  I don't think that is a very common corporate culture but it works for this company which is a VERY successful company.  The real point here is you need the right people that fit into your corporate culture.  My philosophy on hiring is to put a lot of emphasis on team fit.  I would rather higher a less skilled employee who is a good team fit than a more skilled individual who nobody will want to work with.  I can teach someone new skills.  I can't teach someone NOT to be an ass.

I find that in outsourcing and offshore software development environments, this approach of hiring for cultural fit is often thrown out the window.  Too many companies treat offshore development as a commodity the same as if they were buying PCs or servers.  While there may not be a huge difference between HP and Dell computers, the same can't be said of software developers.  The same approach you would take when hiring full time employees should be utilized when you hire an offshore team.  The Agile methodology is increasingly being applied to distributed and offshore development teams.  This means a higher degree of collaboration and interaction with your offshore team.  You want to hire the same type of team that you would if they were working in your corporate headquarters.  I have seen first hand how beneficial this can be.  It really shouldn't come as a surprise.  Offshore teams that fit your corporate and team culture make it much easier to collaborate and interact with onshore teams.  They are more engaged and feel a greater sense of ownership.  It ultimately brings your entire team closer together.  And when working in a distributed environment, anything that helps in that regard is worth trying.

My recommendation when engaging an offshore partner is to get involved in the hiring process and treat it the same as you would when hiring full time employees.  With Skype and video conferencing widely available, there is no excuse not to.  The goal of any working with any outsourcing provider should be establishing a collaborative partnership.  Hiring for corporate cultural fit should be a goal regardless of where the employee sits.  Ultimately it leads to a more productive relationship.