Coming Clean

Revelation in Progess

What Have I Done?

Once upon a time, I was a software engineer. Then someone said, “Spencer, you’re a very good software engineer. You grok our vision, you produce well designed code that aspires to and can grow into as well as beyond our vision, and you have a knack for working with the other engineers (though your relationship with your managers could improve). How would you feel about leading design and development efforts for our team?”

And I said, “Aw shucks,” and so my downwards spiral into management began.

At first all was well. I had a 3 man sub-team and my co-lead had a 4 man sub-team. My sub-team was kicking butt and taking names. I was doing mostly design, code reviews, and mentoring. I could have done with some more coding work – but I always manage to sneak in some significant chunks in under design work. But we were mostly hitting our milestones, and I saw no reason to fear. If worse came to worse, I could step in on a weekend and get us back on schedule – but I wanted these guys to do it largely by themselves. Good for morale and growth all the way around.

And then it was deemed that my co-lead, who also had a high-level architect hat, needed to wear only one hat, and so he passed his software lead hat to me. And so it came to pass that I was the one software lead to rule them all.

It’s at this point that my downwards spiral into management hell began.

I knew I had to schedule a lot of meetings to figure out where my co-lead was leaving off, where I was picking up, and where the progress of his sub-team was really at. And all the sunshine and happy flowers that I had been hearing about started to wilt and die before my eyes.

I basically picked up 2 very needy non-engineers, realized that my co-lead really wasn’t on top of requirements, design, or implementation progress, and that we needed to cut a bunch of features and rework the other half. Oh, and make sure the entire thing was REALLY being tested.

As petals wilted and flowers died, I flowed the needed scheduling information up the management chain. This, of course, caused new meetings which caused new meetings which caused new meetings which … well, you get the idea. Forget engineering (outside of dealing with my 2 very needy non-engineers). I’m just doing scheduling, tasking, and status … with a good dose of requirements analysis, requirements rejection, and a bit of upper-management scolding (most people think I’m insane because I’ll scold my management – I tell them what it is they have done, should have done, and should be doing – and why I shouldn’t be doing any of it … but the way I see it, if I get fired (and no one is ever really fired), it’s probably because things got to a point where I really am better off leaving anyways).

Ok, ok … it’s not all bad. Really, I’m enjoying it mostly. I just want to get back to the engineering side of things. But I have to fight, for the success of this project, this titanic management battle to get all that is screwed up with our engineering process and management turned around.

It seems that since I’m the only one who doesn’t mind expressing a very solid, actionable opinion, I get delegated with all the managerial crap that everyone else should be doing. What features do we need for our next release (you should be asking the architect)? What support do those features need (again, the architect)? Are we sure we’ve done a top to bottom analysis (I don’t mind helping out, but does the architect have an initial blueprint)? Do we have a tasking breakdown (if we have a top to bottom analysis, then yes)? Do we have initial tasking assignments (sure, I can do that)? Do we have estimate sizes per task and engineer (I can do that too)? Hoooooo crap, why am I doing this?! My part should be small, but I feel like I’m doing it all. I feel like I should be providing data, not doing the friggin’ work. (But the work is that data, they say, so either we’re data entry peons or you do all of it – managers don’t like being peons – and you’re the only one who really knows the data top to bottom)

Anyhow … this is a very long post to say: Sorry I’ve not been around much. Hope things change soon, but I’d expect radio silence to linger on for a while yet. If you want to mail me beer or wine (or money for either), I’ll appreciate it.

One of the Best Marching Shows You’ll Ever See and Hear

This was all the rage prior to my senior year of marching. Ah, the memories.

A Good Mane is Hared to Fend

Last night, I was in the office messing around while Josh was getting ready for bed. I saw that Lisa had a book by Flannery O’Connor, so I picked it up and start reading. It was a collection of short stories.

A few minutes later, Josh comes in yammering about something, and I absently tell him to get continue getting ready for bed. So he leaves but returns 5 seconds later, but in those 5 seconds something in the book has caught my attention.

He snuggles up behind me, still talking, but I’m still reading through the paragraph … no time to bother with him yet. Then I realize he’s saying … something … something … familiar and yet nonsensical.

“What are you saying, Josh?”
“I’m trying to reeeeeeeaaaaaaad.”
“You’re what?”
“Trying to read!”
“What are you talking about? What are you reading?”
“A .. good .. maaaane .. is hared .. to fend”
“What? Point to what you’re reading.”
Josh points to the top of the page where the title of the short story is: “A Good Man Is Hard To Find”

Awesome!!! Josh is reading! So we work through the proper phonetics, he gets all spun up, and then off to show off to momma!

After that, instead of me reading to him for bedtime, I help him read to me. It’s pretty awesome.

Planning a Covert Coup

So … one of the big jokes amongst the developers is my constant scheming to “pull one over” on management. Generally there is something that we know they (irrationally) will not want but is in the best interest of pretty much everyone else. Every now and then, I also host a game of “dream team org chart”.

Today, though, I think I hit a real resonating chord with the senior developer. He’s da’ man on the project. I’m pretty good at getting a vision of what ought to be done and how it will look – certainly better than your average bear. He’s significantly better. In fact, one of the best I have ever worked with – and I’ve worked with a number of crazy smart people. Everyone looks to his expertise, and when he isn’t brought in, quality suffers.

Today, I pitched a covert coup to the senior developer. The main thrust is that since we have the best handle on the development efforts in progress and have the most to say about design and implementation, we need to be overseeing the design process before it gets handed off to the developers. Thing is, there is already suppose to be a structure for all of this as part of the existing systems engineering team.

So, the coup is simple – we are put in charge of developers, and we manage the work that developers do. As part of that (and this is where the coup is manifest), we facilitate the process of system design becoming software design, which is where we are perhaps the strongest of anyone else on the team. This amounts to a coup because the senior developer and I almost always view the system design we’re presented with as a very rough draft that needs a lot of refinement – and in the end, we have something that kinda resembles but mostly doesn’t look like the original design.

The present justification we can use is that, really, the systems engineering team is presently too busy to address the needs and concerns of the developers … and we get bugged by all the developers when systems engineering is not available (i.e. all the time). There’s also the added benefit that the system architect doesn’t need to be a language weenie – he can focus on being a systems engineer, which is what he really only has time for it seems.

Right, so how is this covert. We’re making this covert in that we’re going to try to make this the system architect’s idea. This is the tricky part, but … it’s doable. The system architect already knows he’s overworked and too spread out. He freely admits to this. So, the plan is to bring up his workload, try to get him to express his frustrations (which he rightly has), and then do the whole “so what I think I hear you saying is …” and voila. It’ll take some time for it to ferment and mature for him, but it is so logical and “duh” that I don’t think it’ll take long for him to get on board. And if/when he comes on board … score!

This will free us to really optimally design our software and keep the engineers engaged and busy as appropriate. It lets us manage people we’re already managing more or less. And it lets us decide to take some risks within reason of our areas of responsibility to get things done.

All in all, I’m really pumped about this. I just need to make sure senior engineer is with me to follow through on it.

What Have I Done?

So, in between being heard by upper management and being offered a promotion … I forgot my immediate situation: my current management sucks.

Today, I had a urinary joust with my project lead. Loads of fun. I have a hard time being told to do something I don’t want to do … and I have a tendency to throw it back: “You want it so bad, do it yourself. In my judgement, it’s unneeded.”

Then I had a rant fest with #2 on my project. I leveled with him – I don’t know what he does, I’ve expressed interest in knowing, I feel like I have a right to know, and in the absence of knowing, I’m left to assume that it’s zero value added because I never see any product coming from the management team to help us do our job.

He didn’t like that. He was fine when I said they should be doing more by way of leadership; he was not fine when I said I had a right to know what they did.

After all of this, I found myself wondering … why did I stay?! Oh yeah, I have a get out of jail free card. I think I had better play it sooner than later.

Culture Shock

People say they remember things a lot, and while it’s not a lie – it’s not the truth either. I can’t remember the first time I saw pictures of a black Santa Claus or a black Jesus … but I can remember the shock of seeing a very clear depiction of something other than what I had always internalized as something like myself – like myself to a degree that it likely was (and is) false.

Today, I think I found myself on the opposite side of that coin. Some protestant friends of mine were asking me about the perpetual virginity of Mary – which means I implicitly have to give an account that dismisses the full-blood relation of “the brethren”. To be honest, I didn’t do very well, and I am disappointed in myself.

But what struck me was the … pure alien thought that married people would remain celibate. It’s not Mary’s perpetual virginity that gets them, really. It’s the Mary and Joseph abstaining part that really gets them. And they think they have a clincher of an argument that trumps, well, pretty much the entirety of Christian history minus Protestantism that says otherwise, in prooftexts of brethren and James and Thomas/Jude. Even with solid arguments rooted in language, translation, etc that satisfactorily argue the half-blood relation or cousin relation, in the end, it’s the abstinence between man and wife that really confounds them.

I’m not one to make the argument that it’s usual. But then, I’ve also never been one to argue that much about the Holy Family was usual. And, really, it’s their peculiarity that really sets them apart and makes them all the more beautiful.

Staring Into Madness

Have you not heard of that madman who lit a lantern in the bright morning hours, ran to the market place, and cried incessantly: “I seek God! I seek God!”—As many of those who did not believe in God were standing around just then, he provoked much laughter. Has he got lost? asked one. Did he lose his way like a child? asked another. Or is he hiding? Is he afraid of us? Has he gone on a voyage? emigrated?—Thus they yelled and laughed

The madman jumped into their midst and pierced them with his eyes. “Whither is God?” he cried; “I will tell you. We have killed him—you and I. All of us are his murderers. But how did we do this? How could we drink up the sea? Who gave us the sponge to wipe away the entire horizon? What were we doing when we unchained this earth from its sun? Whither is it moving now? Whither are we moving? Away from all suns? Are we not plunging continually? Backward, sideward, forward, in all directions? Is there still any up or down? Are we not straying, as through an infinite nothing? Do we not feel the breath of empty space? Has it not become colder? Is not night continually closing in on us? Do we not need to light lanterns in the morning? Do we hear nothing as yet of the noise of the gravediggers who are burying God? Do we smell nothing as yet of the divine decomposition? Gods, too, decompose. God is dead. God remains dead. And we have killed him.

“How shall we comfort ourselves, the murderers of all murderers? What was holiest and mightiest of all that the world has yet owned has bled to death under our knives: who will wipe this blood off us? What water is there for us to clean ourselves? What festivals of atonement, what sacred games shall we have to invent? Is not the greatness of this deed too great for us? Must we ourselves not become gods simply to appear worthy of it? There has never been a greater deed; and whoever is born after us—for the sake of this deed he will belong to a higher history than all history hitherto.”

Here the madman fell silent and looked again at his listeners; and they, too, were silent and stared at him in astonishment. At last he threw his lantern on the ground, and it broke into pieces and went out. “I have come too early,” he said then; “my time is not yet. This tremendous event is still on its way, still wandering; it has not yet reached the ears of men. Lightning and thunder require time; the light of the stars requires time; deeds, though done, still require time to be seen and heard. This deed is still more distant from them than most distant stars—and yet they have done it themselves.

It has been related further that on the same day the madman forced his way into several churches and there struck up his requiem aeternam deo. Led out and called to account, he is said always to have replied nothing but: “What after all are these churches now if they are not the tombs and sepulchers of God?”

Source: Friedrich Nietzsche, The Gay Science (1882, 1887) para. 125; Walter Kaufmann ed. (New York: Vintage, 1974), pp.181-82.]

Brought to us by the Internet Modern History Sourcebook

I honestly and truly love this parable. I love the madman. I love to stare into his eyes. He is terrifying and horrible, yet he speaks the truth as he knows it – and truth always carries a beauty with it. And I’m left to either agree with him yet while not knowing what to make of him … or to disagree and stand in contradiction to him. He mocks me, croons to me, and weeps with me. He is my enemy, and he is my brother. I love him. I pity him. And above all, I fear that secretly, I am him.

All Christians should meet the Madman, and they should never forget his gaze.

I Want Rands

So I have been reading Managing Humans and Rands in Repose the past week. Rands makes me feel less like a jerk and more like a guy with legitimate managerial issues.

I was talking with my old boss (now like 1 or 2 levels of management over me) about the book and just some of the stuff I’ve been reading, how I felt kind of validated in freaking out, the lessons a manager should learn in any and all freak outs, and just some of the communication problems I see in our group. He looks at me and dead pans, “It can’t be a very good book then.” I really love my old boss. He gets it.

Today, I decided that my current project manager is a coward. His first line of status is email and IM. No phone. Not unless the poop is about to hit the fan, and he needs the “took personal time with employee” checkbox checked.

This afternoon I got an IM wherein he was checking status on a particular project. This came up just after I had replied to an email he had sent relaying that our intern, who is not very capable and is increasingly less reliable, bailed out of a week of work – the week where we were trying to get him spun up on a special project. This whole situation has begged the question of who should my manager be talking to with regards to what’s going on in the project, what’s our personnel situation, etc. As far as I’m concern, with no disrespect to my teammates, it should be me.

So I picked up the phone and called him.

Mgr: “So you want to talk?”
Me: “Yeah, more than just status. We’ve got a few things we need to talk about them and now is as good as any.”
Mgr: “We’re not going to talk about those things.”
Me: “Yes we are, after the status report.”
Mgr: “No we’re not.”
Me: “Yes, we are.”
Mgr: “No, I’m not on a private line.”
Me: “What do you mean private line? Why do we need a private line?”
Mgr: “Because we can’t talk about personnel.”
Me: “Well, if we talk about personnel, it will be because you make it an issue. I want to talk about higher level stuff.”
Mgr: “Oh …”

Yeah, see … when we talk, this is the way it always goes. He thinks he has a handle on the situation, but he doesn’t.

Skip forward to after status

Me: “Look, our process, my understanding was that you put so-so in a position for moderating process – not for technical control or personnel issues. I thought that was left to the team lead.”
Mgr: “It is.”
Me: “Well, then why are you talking to so-so about our technical status and personnel issues? And why are you giving so-so crap about the decisions I made the call on?”
Mgr: “Well, I didn’t realize you made the call. I thought there was team consensus.”
Me: “There was team consensus by my sheer force of will and the absence of project management. I said I’d take the fall. Everyone’s backing the decision now it seems.”

At this point, my manager begins a series of excuse making wherein we start talking about what he explicitly outlined he didn’t want to talk about. And in the process, he all but says that the hub-bub he’s created here in not letting the team manage itself has been wasted effort – he’s back to where we started. Skip a few minutes …

Me: “Mgr-person, do you want me on the project?”
Mgr: stunned silence
Me: “It’s just a question. But every time I have to work with you, it’s a fight. I don’t get it.”
Mgr: “Well, just because you don’t get what you want …”
Me: “What I want? I mean, I’m opinionated and strong wilked, sure, but when have I been wrong? I mean specifically, when?!” (hubris, it’s bad … but I do have a solid track record at the moment)
Mgr: “Look, I don’t know why we’re talking about this … how this happened. We’re both frustrated. So lets take a breather and talk about this later.”
Me: “Fine, we can do that.”
Mgr: “Just schedule a meeting …”
Me: “No, you schedule the meeting. If you want me on the project, show that you care and make the time.”
Mgr: “Fine”

By the time I left a few hours later, still no meeting notice. He did try to hit me up for another phone conversation (via IM instead of just, you know, calling me). We’ll see where we get tomorrow … but I’m ready to check out, and I’m making contingency plans for those I’m going to be leaving behind. Couple with my possible departure with the imminent departure of our resident senior free electron, and my project is pretty much screwed.

When I’m Where They Are, What I Won’t Do

The one thing that is like the central theme for all my angst at work lately is simply: I see no value in my immediate leadership and management.

And this, according to them, is a virtue of our project.

I don’t get it. I don’t appreciate essentially making up work and doing said work while they loom over my shoulder and waiting to decide when they are going to step in and take over or take “corrective action.” I know it sounds crazy – especially making up work – but that’s more or less what I’ve been doing of late.

Management, in my view, is very much a flow down activity. You work with customers, you identify requirements, you identify design needs, you work the design, then you pass off to developers but hang around to monitor the situation, and eventually take back to work things through verification/validation/QA. Nearing the end of design and preparing to hand off is when the full team begins to get engaged – this is what we’re doing, this is why we’re doing it, this is how we plan to do it … any questions? anything people think we’ve missed? lets do it then.

The dynamics of my current project is such that the developers get dragged into meetings with customers, listen to what customers say, and pretty much do all the systems engineering on our own even though our leadership/management state they are to be doing these things … and get all in a tiff when they realize they are behind or cut out.

Over the past 3 days, I’ve talked with different people on the systems engineering/leadership/management team of my project, and I’ve been overly blunt and probably disrespectful about all of this. Do I think it will change anything? … no, not really. yet here I am, with this small core of hope deep inside that won’t give up.

So, when I’m where they are, the people underneath me will know how I’m working for them. They will know – even if it is just a high level – what I’m doing and how I impact them and the value I provide them. I do not want to ever engender this feeling of being left to figure it out alone while also being responsible to some nebulous, unidentified higher standard that no one cares to share until after the fact. My people have a right to self confidence, empowerment, and assurance that their leader is working in their best interest and how he does that.

Quick question for all you management types out there: is that really too much to do/expect/ask?

Christmas Shopping: SMG or OLPC?

So I’m thinking about the “cool” present for this Christmas. What will it be?

Up until a few days ago, I was thinking I wanted to get my hands on Super Mario Galaxy for the Wii. One of the cool things with SMG is that while it has a single player story mode, a second person can interact with the game at the same time – assisting or pestering as they so desire … that is until I decide to impale my wii-mote into their skull. Josh and I really enjoy playing games together, so I’m thinking this could be a real winner.

But now, I’m thinking about the OLPC laptop. The cool thing about buying an OLPC is that the commercial price is about that of a low-end laptop ($400) – but that price is actually purchasing 2 laptops: one for you, and one for some kid in the world that would otherwise have no chance of seeing a laptop. This strikes me as a very “in the Spirit” kind of gift … though really, to be really in the Spirit, I guess I’d buy two and give them both away.

But then I got to thinking that really, it would be cool to give my kids an OLPC, even though they are a bit young for it. Josh may actually be at a good starter age – that of 5. But then I think that it would be really hard for me to just let Josh play with the laptop – I’d be dying to mes with it myself. All the same, I think there is very good potential here.

Lisa just mentioned an idea (she saw my tip-tap-typing and loomed to see what I was doing). The kids REEEAAALLY like taking pictures and having their pictures taken. So Lisa was thinking about getting them some kid digital cameras. That would be a lot of fun, too. They’d never put them down, though, and we’d be eating batteries like never before.

So, anywho, that’s the ideas I have skating in my head for the Chastain Christmas. Anybody have any extra ideas, suggestions, thoughts?