So, small organizations, teams, groups, what-have-you, have some things going for them.
- Easy communication
- Easy to identify who to contact
- Quick collaboration
Of course, there are some problems
- Low overlap of work
- Hard to pass work over for vacations
- Easy to miss communicate something
See, it’s nice that we have 2.5 devs on our team. Technically two, but there’s a third dev in our “group” who sometimes helps even though he’s technically part of a different project. They just only have something for him ~25% of the time, so he fills in some downtime with working with us. When a task comes in, whichever of us has the most detailed knowledge of the area of code involved gets that task, or at least balanced against their workload. If they have a big or time-sensitive issue, then it may slide to the other dev, who then becomes that expert for the next task.
But, going on vacation? Yeah, that’s complicated. Because when asked “Does anyone else know this code?” the answer is, quite frankly, “No.” Not that they can’t figure it out or understand it, but they haven’t before now. Because they were working on their tasks.
If we had 5 or 6 devs, then there might be two of us working on any given task, so when one goes out, the other has general familiarity and may just be missing out the details of this small piece where they weren’t primary.
For instance, I had three big code projects finishing up as I left. One is deploying after I get back, one can wait because it still has to go through acceptance with the customer .. and the other deploys the day before we fly in … AWKWARD.
Of course, that’s nothing compared to the call I got at 3pm on my last day asking if we could deploy another project, that had been waiting on feedback for 3 or 4 months now, ASAP. They wanted “before you leave on vacation” but THAT wasn’t happening. It simply wasn’t on the schedule to deploy, and we have a 1-week advance policy. But it can’t wait until I get back apparently, they promised the customer it’d be out by the end of the month … Yeah, oops, sucks to be you?
So I put together a deployment request and the release files … and told my boss about it and said “you all have fun now, y’hear? ” Because I garauntee I’m not cancelling international flights because they’re morons