In Sync
Hi, I’m Rob “Xemu” Fermier, the lead Code-Bot (ie, programmer) on one of our game projects here at Robot. While a lot of my day-to-day job involves actually writing code, fixing bugs, and the like, the most important responsibility I have is just fostering communication – both within the programmers on the project but also among the various people on the team and in the company as a whole. There are a million reasons why good communications are important, but one of the most basic is that we want to make sure we are all headed in the same direction in our day-to-day tasks.
One of our front-line tools in helping communications is the “morning sync”. Every morning, each of the 4 “pods” at Robot gets together and has a quick discussion to cover where we are and where we’re going at a very specific level of detail. Each person quickly hits what they got done yesterday and what they’re doing today. Simple, but effective.
Of course the last thing most developers want to have on their schedule is another meeting; much less one scheduled every single day. So there are a few things we do to make sure it has a positive impact rather than a negative one:
- Short: Each person has to be short and to the point, and the whole thing usually takes 10 to 15 minutes. It’s never allowed to go over 15 minutes, period. Discussions that crop up as a result of the morning sync are usually resolved in ad hoc meetings immediately afterwards.
- Easy: We sync right in the same pod where we are working, so there’s very little organization required. Everyone has a good sense of what they are doing and never has to “prepare” anything. One advantage of a daily meeting is that it can be pretty casual and folks fall into a routine with it easily.
- Reliable: The sync always starts on time, regardless of who is there. People can plan on it and it doesn’t drag on by starting late or hanging around.
- Open: Anyone is welcome to listen in on the sync meetings. But they don’t talk, since the meeting is focused on the people doing the work. By having them out in a common space, it promotes the idea that we want to share information to anyone who wants it.

What is most important, of course, is the communication benefit that it brings us. While there are rarely surprises there, it keeps everyone abreast of the latest things going into the code base or changes that are imminent. Frequently some other programmer than the one doing the task will have some relevant knowledge or experience to share, and this gives a very convenient platform for doing so. When the process is operating smoothly there aren’t a lot of surprises, but it still helps kick off the day and keep people focused on how what they do fits into the big picture along with the work of all the other ‘bots.
This is a modified part of a larger process called “Scrum”. We don’t adhere formally to the Scrum process, but we have hijacked bits and pieces of it that work well for our rapid pace of development and iteration. It is an important “meta process” that each of our processes needs to be open to change and evolution as we use it and see how it does (or doesn’t) work in practice.
We’re lucky here at Robot to have a team of very experienced folks who have all worked together extensively in the past. This means we are starting from a great base of communication to begin with, but without constant attention it is easy for those lines of communication to shut down. Experience has shown that the worst problems almost always start as a breakdown in communication – so anything we can do to keep those from even happening in the first place is a huge win for the project and the team.







Very interesting how you guys start the day. Do a lot of people listen from day to day or they just pop it when ever they fill like it? How many people show up to the meeting to talk about stuff?
Last thing Thanks for allowing us to comment on your blogs and getting to view more of them than ES.
I do agree it is very important that you have good communications and that it is also excellent that you do have a team that have worked together in the past with good experience. Xemu what game are you actually working on though? or are you goning to make it and then give us a release date just to make sure that you dont scrap that game and start a new one from scratch? but you do need to put somthing in on the projencts tab though because it blank!
We use a flavor of Scrum as well in the financial services org I work for and found it helpful; especially in fostering communication and individual accountability. Quick question - are there other pods nearby when you scrum? I do like the idea of just kicking off the scrum in the team env. We have a fairly open env so I can envision concerns over open team meetings in the larger team area. Perhaps the pod concept greatly helps with this?
Good luck with game!
I think that having a regular meeting time is great, in our company meetings sometimes have a schedule but usually they are spontaneous and short. And although our company creates both software and hardware (and I only work with software) it's really fun listening to what the others are working on.
Will there be an Age of Empires 4???
I like the casual quick format of your meeting. Seems perfect for the environment you work in. In the IT field I'm in, our 13 person team works remotely from home and we only have a face to face meeting in the company office twice a month. Finding a way to communicate effectively day to day is a struggle in our environment.
I look forward to more Dev blog entries. Its fascinating to get a peek behind the curtain of game development.
Nice conference table... I buy my invisible paint from Walmart, it's cheaper there.
...Haha that was just a stupid joke, anyway. You guys look tired from standing. How about you Blog about your thoughts on the structure of the engine your team is programming, or something? Maybe; how the different elements should lay down into a system (classes, arrays, functions .etc)
Or, you could explain how your team is going to take on a new programming challenge with aspects you've never encountered before. Layout your ideas on how you want to accomplish this task.
Thanks guys for making Age of Mythology (my favorite), and Age of Empires. Make PC GAMES! Game consoles suck.
In the photo, one of the guys is about to gain an extra life (mario mushroom)
woww great post good luck
Very interesting... I really like it... Thank you so much...jual pakaian layali