This may be an unfortunately Millennial perspective, but I’ve been out of school and at work for four years now, and there are some things that continue to faze me.
Mostly, I’m still a little amazed at there is such vagary in time. In school, there is a clear First Day of School and a Last Day. There are semester breaks, finals, exam days, due dates, etc. ad infinum. Now, any due dates are arbitrary. Why does something need to be done by next Wednesday? Because your manager heard from his manager who misunderstood a customer saying it’s needed next week.
Despite some days varying wildly from others, many are mere copies of yesterday, which is a copy of the day before, which is a copy of last week, which was the same as next week and next month will be. As I write this, I’m on mute, 43 minutes into a daily morning conference call that lasts between an hour and an hour and a half. I say 3 sentences, about 20 minutes in explaining what I did yesterday and will do today. Yesterday I got in, wrote some code, and gave a project demo to some new users (who aren’t actually using the new system yet anyway). Today is unfortunately the exact same day. But if today instead of server in the basement explodes, 40 new users all try to use our system simultaneously, and my company selects me as the new Acting CEO, tomorrow I’d still get on the call at 7, at about 7:20 I’d summarize that into 2 sentence (okay, that would probably get a third or fourth sentence), then go on mute while everyone else talks.
How do you mark time in this kind of environment? By the constant, never-ended change. What? What change? I thought you just said things are never changing? Managers move around, teams shift projects, people move to new teams. There are promotions and lateral moves. Reorgs are announced, then changed, then made announced again – the dates people start doing new work has no correlation to when changes are effective. You think you know who to talk to about something in another department, but when you talk to them 6 months later they’ve moved to a new team. Did something happen three months ago or six? It was last year already, wow. Was I working for my old manager then or the current one? I can’t remember, there was a long slow transition period. I remember we were sitting in a different set of cubes or on a different floor, but when did that move happen?
Projects start. Well, projects don’t start, they wind up. By the time a team is put together to work on it, management has it all figured out, even though there’s nothing solid to know anything about. Users have been talked to, but not in any orderly way. Architects are been designing it to fit their Grand Plans. By the time there’s a team in place to do it, it’s already heading down the wrong path and too much has been done for management to want to start it over. If you do start over, you begin a cycle of continuous restarts. Projects get going and start rolling down the hill. Slowly picking up speed until there’s enough there it actually can do a simple function! There’s a first production deployment! …it fails… Then there’s the hot production deployment! …it fails… Managers get together, architects redesign, team leads look busy, developers ignore direction and do whatever they think’s needed. Weeks of intense testing…another deployment…and it works! Well, 90% works, so let’s have a team lunch to celebrate! Oh wait, we still don’t have any users. So when the first user tries is… looks like lunch was premature.
By this point, you’re 8 months in. What do you have to show for 2/3 of a year? A system that in very carefully controlled situations can mostly but not authoritatively do part of what a small group of people want it to do. How long until it does everything it’s supposed to do? Right about the time a total re-write is due.
Nothing’s ever done. Nothing’s ever complete. How do you measure success when there’s no completion? There’s too big a gap between “done” and “done done”. I find a defect and make a change. It takes a few hours or a day and I call it done. When’s it get deployed – actually used? Do I get to feel accomplished that I wrote code not being used yet? Or should I feel successful instead when something I did a month (or three) ago and have moved on from since finally got turned on last week?
I spent my first nine months here working on a project. It never got finished – my manager told me to work on something else instead. What was I supposed to feel about that effort? A year later another teammate picked up my work and continued, to meet the same fate. Currently, another teammate is finally, slowly, completing it. It’s completion is built on the core of my work, but I have no satisfaction from it. There’s a mixture of disappointment it took so long; amusement it’s finally being finished; more disappointment because I would have liked to be the one to complete it; incompetence that my work couldn’t get finished until this far later; and a few other generally downer thoughts. A good early success in my career would have been nice.
A few years ago my team had a big infrastructure change. We worked hard for over a month, and when it was “done” our architect bought us lunch to celebrate. Over 100 days later, we finally finished by my standard – and by the time I’d finished this part of the project, the rest of the team was working on something else. That’s it – that’s the last and only time I’ve felt like a specific thing was distinctly finished.
My current project? Training 120 users on a new system. Two at a time. Okay, 60 demos, that’s easy to track, right? Easy to mark progress and know when we’re done? Except we don’t actually know how many users need to be trained. And the real purpose isn’t to train them on the new system – it’s to have them stop using the old one and start using the new one. We’ve trained about 30 people so far – but only maybe 4 are actually using it. How do I mark this progress? When do I get my “we finished” lunch for this? When 100% of users are trained, but not using it? When 100% of them are using it? Define “using it” first. When we turn off the old system? That’s not going to happen – it does too much other stuff that’s not being replaced by the new one, so it’ll live on in a lobotomized fashion. We could celebrate the lobotomy because that means we’re in charge now, but celebrating our completion by another team’s intended mutilation isn’t very satisfying.
And then, people leave. This is the part that continues to confound me the most. We hire people mostly matching with the academic calendar – we have a large influx of college hires in June and January. But then people decide to leave. And I’m not talking about the constant roar of upcoming retirements (once you’ve been here 35-40+ years, I’ll dearly miss your knowledge but your leaving is anticipated). Just out of the blue one day someone will email some friends or send a Tweet or through the grapevine that someone’s leaving. Two weeks from yesterday someone you’ve worked with, eat lunch with, kvetch about work and life with and battle production problems and management with is gone. What made yesterday worse than the day before to prompt you to leave? I get that it’s a natural cycle and not usually a specific event, but it’s still so ingrained that there should be natural endings – the end of the project, the final exam, the semester or year ends. But next Thursday seems so ethereal.
How are you supposed to keep up with all this constant change? More emails flooding your inbox every time someone you’ve never heard of changes teams? Org charts that show management hierarchies without corresponding project information?
How do we measure time, measure success and failure, how do we measure growth and progress or lack thereof in such a world? It’s the middle of the 2012 2nd quarter – are things as they should be? Better? Worse? Better or worse than what, than when? Friends and mentors who have taught and trained me have left and continue to leave, and new employees I teach and train continue to come. Who’s going to stay? Who’ll leave soon? Who will be working on what, and what will my relationship with them be? What will I be working on? What’s more important, less important? When is something complete, when is there something to call a success? When is something a failure and not just a mistake or setback or delay?
What are the answers to these questions? Are there answers? When will I start figuring them out, and who will help get me there? How will it happen? When will it end, and how will I know?