I’ve been doing a lot of reading on teams lately, coming up with pretty common trends, such as the importance of good team dynamics, namely people are a huge reason why a team is productive or not. Or in other words, throwing a bunch of random people together an expecting a good team to emerge is a pretty big anti-pattern if there ever was one.
What I’ve found is most people’s theories on team dynamics and building a good team tends to scale to around a dozen folks max. But what happens when your team gets larger? All of a sudden that tight knit group begins to fracture into their own tribes, which is when the dreaded “office politics” begin to emerge.
I was reading this blog post the other day, which really spelled out what happens. Quoting from them…
The craft itself – the creation of that new business model and new product to solve a big, painful problem, is a smaller and smaller portion of the time and energy pie chart (at least, for managers/execs/founders). In some ways, that’s a sad, frustrating thing. And in other ways, it’s a healthy, normal part of scaling.
Why? Because getting bigger and working cohesively toward common goals comes into conflict with so much of human nature.
Human nature dictates that we:
- Form tribes to build identity and camraderie – yet in a scaling startup, this causes untenable, painful, progress-stopping inter-team rivalries.
- Invent a common enemy upon which we can heap blame and against which we can fight – sadly, inside the tribes that naturally form, there’s often a tendency to create that common enemy internally (it could be marketing vs. engineering or testing vs. production or sales vs. execs, or any number of others).
- Minimize the positives and focus on the negatives – that could be feedback from customers, internal critiques, manager reviews, product imperfections, or weaknesses in process. It’s so easy to forget that we somehow beat the formidable odds against building something that worked, something that attracted customers, something that scaled, and a company where hundreds of people really do want to work.
- Resist change at all costs – yet in a scaling startup, change is the only constant, and processes, procedures, formats, teams, and everything else has to change to be successful.
- Act emotionally, yet believe our decisions to be driven solely by logic - we tell ourselves we act rationally, but can easily prove that irrational biases rule our minds. This wouldn’t be nearly as dangerous if we could recognize these biases, but in another failing of human nature, we cannot – we cling to the notion that our decisions, unlike the rest of our species, are uniquely logical.
- Lose empathy as our numbers grow – tragically, when we need empathy the most (as an organization gets bigger and there are more people to consider and more complexities between them), our nature is to rescind it. It’s easy to empathize with a small group you see everyday, but much harder to extend that empathy to everyone in a larger group (especially those you may not know well).
- Create rules and process to prevent against repeats of singular abuses – the old adage of one bad apple ruining the whole bunch becomes more and more likely the larger a startup grows. Process can be wonderful, but sometimes we create a process just to ward against some bad behavior from a former employeee and, by doing so, ruin the company a little more for everyone. Use process to free and enable, not to punish and restrict.
- Irrationally romanticize the past – “Remember how things used to be? It was so much better three years ago when I first started here and…” -everyone at any organization, ever. But I remember three years ago. It sucked compared to today. Our ability to delight customers paled in comparison. Our ability to attract talent was in the toilet. Fear about our budget and our bottom line was a daily occurrence. 2013 is superior in so many ways and I know it, but even still find myself fondly remembering (or, rather, misremembering) back in 2010 when (in my human-addled mind) it all seemed so much easier.
This really nailed it on the head; as a small and nimble team, the sense of camaraderie gives you this sense of security and drive. And this is a good thing, as in the early days the focus on getting a product to market and getting a revenue stream established gives a team clear vision and goals. But when you hit one of those plateaus, things get a bit more cloudy on where to go from there.
I don’t think there’s a magic bullet to avoid all of this. Nor can you try to cling on avoiding team growth as a way around this. You need to know it’s coming, and make sure you don’t let the larger team grow apart.
After nearly a year ago saying I was going to be a more regular blogger, here I am nearly 4 months from my last post ( and closer to 5 months since one that arguably had some sort of insight to it ). So you, one of the 5 regular readers of my blog are probably wondering what’s my excuse going to be this time.
Simply put, I let my own inefficiencies get the best of me.
I plan to do a series of blog posts around this topic, but the bottom line is that being a remote worker means you have to have an even better grasp on your time. If you don’t, you’ll get yourself buried in no time.
So let’s start this series with what I think is one of the easiest things to do. Learn to automate what automate-able.
I had several things I did on a regular basis, including posting builds and updating our API and Schema documentation. And each time I was running all the commands to do this by hand. Now question 2 of the Joel Test says this is a bad idea from a build perspective, as it makes the whole process prone to all sorts of human errors in skipping a step or mistyping something. But I look at it an even more elementary level; if something you do is repeatable and done largely the same way every time, not automating it is in effect wasting time. Especially if it’s a long running process; it’s far better to have it run on another computer while you tend to things needing your attention. It’s multitasking where you don’t need to pay tons of attention to one of the tasks. So I’ve dug back into my bash scripting skills, and make every since task I do that’s script-able into a bash script ( or a PHP one if that’s easier ).
But then there’s slightly less obvious methods of “multitasking” that is often overlooked. I was reading an article in Delta Air Line’s Sky Magazine last month ( sorry, couldn’t find it in non dead tree form ), which talked about how more and more people are outsourcing the little things in their lives that are taking time away from friends and family. And it clicked for me in a somewhat surprising way; I made the focus of my job too much at the low level, when I needed to be looking at the proverbial “big picture” more to be able to be effective. And these little tasks, all very low level, were eating away at my day and not letting me focus on being an effective evangelist inside Sugar.
So I’ve started down the road of being more effective with my time, and in the process had to decide what’s truly core to my job and making sure I keep that most important. Then with the other tasks, I’ve worked with my team to balance them between all of us or move them off my plate when they don’t make sense. It seems quite simple on the surface, but for a person like me who wants to turn out a complete and perfect thing with everything I do it was tough. But the gain for me for doing this, I’ve found my days less stressful, working less late into the night, and generally have enjoyed what I do even more than before. As a bonus, my communication with my other team members, as well as other folks in the company, has improved.
Being remote makes it really easy to fall into the trap of becoming a workaholic, as work is a mere few steps away. Resist the urge, and instead become more focal to your co-workers and managers on what is a timesink for you and work with them to help solve the problem. It’s easy to become siloed as a remote worker, and when this happens you will quickly fall into the inefficiency trap.
I’m excited to announce two more conference stops for me this spring!
First, is my return to POSSCON in Columbia, SC, at the end of March on the 28th and 29th. I’ll be doing a great talk and live demo on building an application on the Sugar platform, but the big draw for this show is to see our very own CEO and Open Source legend Larry Augustin keynoting on ‘Open Source – Now and in the Future‘. He’s a great speaker and comes with amazing insight from someone who helped coined the term back in the 90′s. Plus, as a conference POSSCON is top notch, with a great array of speakers representing the best of open source catering to making it work in the business world.
Then, I’ll make a trip over the pond in mid April for the inaugural Whisky Web conference in Edinburgh, UK. I had a chance to meet the organizers back at PHPBenelux in January, and I must say they won me over with the promise of free whiskey .
But seriously, for a one day conference the content and speaker list is excellent. I’m grateful to be one of them, debuting a new talk on “Lessons Learned From Testing Legacy Code”, where I’ll hopefully give some good advice on making that crazy legacy app you’ve been thrown into not fight you from trying to make it testable.
Look forward to meeting up with friends and colleagues at these two events upcoming, as well as meeting new faces as well.
Learn more about honing your business skills in this Saturday’s Day Camp 4 Developers virtual conference
I’ve talked a lot on this blog about life and career in this blog recently, as to help developers become more productive members of a functioning business team. It’s a topic that is near and dear to me, and one that is essential for anyone looking to progress their career.
But if you want to really dig deep into this topic, then drop a mere $40 and check out the Day Camp 4 Developers conference. One day and you’ll hear some great talks such as these:
- Lorna Jane Mitchell: Time and Money
- Jacques Woodcock: So you want to be Self Employed
- Thursday Brahm: Planning Your Business for the Long Term
- Tara Aaron: Put It In writing: Why good clear written agreements are important for developers and their clients
- Paul M. Jones: Career and Life Management
And one from your’s truely as well…
- John Mertic: Is it good for the company?
Loving what you are seeing? Curious on how to take your career from developer to manager? Then definitely sign up today at http://dc4d4.eventbrite.com/.
It’s been a few weeks since I was in Belgium for the excellent 2012 PHPBenelux Conference, which brought together beer, chocolates ( at least for the wife ) and PHP together for an excellent two days of fun and community. And I did a new talk, Working successfully outside the cube, which was a new talk for me that I got great feedback from.
But, from reading the comments, there’s two points I didn’t really hit on well during the talk, so I figured I take the time now and try to answer them here.
What is the cost to my employer to be remote?
There isn’t a hard and fast answer to this question, and it depends upon your organization’s structure and policies along with what technologies they already have in place. Generally speaking, you’ll need this:
- A computer that is portable enough to take between home and work. This is a laptop for most people, but if you have one of those ultra-portable desktops that would work as well. But anymore, the cost between a desktop and laptop isn’t very much. Even if you don’t work remote having the convenience of being able to take your laptop to meetings, over to your boss’s or co-worker’s desk, or out to a customer site, far outweighs the minor additional costs.
- Tools to communicate with co-workers. This usually means IM or IRC for quick messaging, Skype or a soft phone for talking directly with someone, and Gotomeeting or WebEx for doing screen sharing. Most organizations I know of have these sort of tools already in place for their marketing, sales, and/or support teams, and if not many of these are free or low cost to use.
- A way to access servers and other resources in the office remotely. This is most likely a VPN or other secure connection, which chances are good already exist if you salespeople or other executives that are outside of the office working with any frequency.
It’s probably best to investigate this first with your boss to see if there are any hurdles you need to get past, but chances are good the infrastructure is already in place.
What are some best practices for collaboration tools for remote workers?
While everyone’s organization is different, here’s what I find that works best for me:
- Got a quick question? Use IM or IRC for this, unless you don’t need an answer right now, then use email
- Want to chat an issue over with someone? Use Skype, or perhaps Gotomeeting/WebEx if you need to show your screen to someone.
- Need someones attention now? Direct IM, text message, or email works best here.
As for soft skills in effective communication, check out a blog post I did about respecting other’s time a while back for some good points on effectively planning meetings and learning how to make sure your interactions are productive with others. And next weekend I’ll be doing a talk at the virtual Day Camp 4 Developers conference around how to navigate the business world, which should also help you out in your quest to better plug into your organization and be productive while a remote worker.
Hope this answers everyone’s lingering questions from the talk. Thanks again for all the great feedback, I hope to do it again soon…
So this post is a bit of a rant more than anything, so for the three regular readers of this blog feel free to skip over this post. I promise to make this foray a brief one.
I made a blunder on my flight home from Atlanta to Akron/Canton Airport a few weeks ago; I left my lovely, SugarCRM logo and my name engraved iPad safely in it’s case in the seat pocket of seat 3A. D’oh!
I realized this the moment I got home, and being a bit of a snow storm decided it not prudent to risk life and limb to return to the airport. Calling the airport informing them of this, they took my name and number as said they would ask the Delta desk about this. Being my self driven self, I started tracing the plane, and saw it was doing a CAK-ATL-CAK-ATL-OMA run that day, so figured it would end up in one of CAK, ATL, or OMA ( Omaha for those who aren’t as familiar with airport codes ).
So I went back to the airport at CAK, and they didn’t have it ( but had another iPad someone lost on a plane ), and called OMA, which didn’t see it either. My guess is that it’s in ATL, but low and behold, THERE IS NO NUMBER TO CALL ABOUT DELTA LOST AND FOUND AT ATLANTA. That’s right, nobody to call and ask, nor anyone I could be transfered to that will call there and ask. What do they want you to do? Fill out a web form and hope for the best. Which I did, and all I am left with is hope .
So my call to the blogosphere and twittersphere is this: short of going down to Atlanta and stalking the Lost and Found desk, who can I call to help me.
I have a number of exciting talks coming to a conference near you…
- Next weekend I’ll be in Antwerp for the 2012 PHPBenelux Conference. This has grown to be a favorite conference of mine, as you can’t go wrong with a combination of PHP, great people, great chocolate ( just ask the wife ), Belgian Beer, and Belgian Fries. In fact, I’m so much a fan of the show that I’m having my company, SugarCRM, be the platinum sponsor for the event. We’ll have a booth and a hacking lounge there, where we will bribe developers with free t-shirts and other prizes for hacking on the codebase and building new integrations between Sugar and various other frameworks, applications, and services. I’ll also be debuting a new talk, Working successfully outside the cube, where I’ll be talking about how to become a successful remote employee and how to become a more remote friendly employer.
- Then, the following week I’ll be a part of the The Virtual Git Summit hosted by php|architect on February 1st. I’ll be doing a talk entitled “Subversion to Git: A Sugar Story”, where I’ll be talking about how we at Sugar moved to git and GitHub, including why we did it, how we did it, the challenges and successes of the move, and what we can do now that we are using git. With a great lineup of speakers, it should provide a great overview of using git in real life.
- And then in March, I’ll be a part of another virtual conference Day Camp 4 Developers #4: Business 101. A great conference for those looking to move out into doing your own gigs, my talk entitled “Is it good for the company?” will center around helping developers learn the ins and outs of corporate culture, learning how to deal with it in order to grow you career. It’s a packed conference with some of the best and brightest minds in the community that have real world experience with building a career around software development.
Hopefully you can make one or more of them