Among developers, there is a well known platform rant comparing Google and Amazon that is often referenced in terms of Amazon’s Service Oriented Architecture.
All teams will henceforth expose their data and functionality through service interfaces. Teams must communicate with each other through these interfaces.
If I was to ever become CTO of a company (unlikely) I think I would have my own mandate regarding communication within the company.
- Any kind of announcement or update, should be on an internal blog that supports RSS/Atom feeds. Any tool written by the team, should have a link back to this blog.
- Anything that has a time period or a deadline, should be on an internal calendar that people can subscribe to. Any tool written by the team, should have a link back to this calendar.
- Each team should have a support window and questions should be tracked in a public-by-default bug tracking system. Any tool written by the team should have a link to this support window.
- Things can be sent via Email or Slack or any other communication but must always link back to the original source on the blog or calendar. cool uris ensure that the information can be referenced again or passed around to others.
As a developer, if I’m using some kind of open source project, I can usually find it on GitHub and either subscribe to different types of notifications from the UI or I can subscribe to an RSS feed.
Working at a large company, I was often frustrated at how bad teams were at communication. Even though many teams relied on exactly this kind of communication for many of the open source tools they used, they never felt it valuable to provide the same kinds of communication to their users within the company. Many coworkers I would talk with agreed that many of these would be great to have, but I was never able to convince other higher ups to push for more of this. I suppose I have to wait until I become CTO one day (unlikely).