When it comes to software development, we usually imagine big companies with numerous teams of software engineers engaged in large-scale projects. The noise of open spaces, constant collaboration, brainstorming, and team-building events are all familiar attributes of the day-to-day software development reality.  [ read more...]