The Robert Prince At Work Howto

This document attempts to give the reader a quick-and-dirty view into what I'm like as an engineer and as a manager. It's meant to help quickly understand some of my quirks, expectations, behavior, and personal philosophy. It's partially inspired by this article.

As an individual contributor, programmer, engineer, systems wrangler, whatnot

My defaults as an engineer

For better or worse, my identity is tied up in what I do

That means sometimes I can't separate my ideas or opinions from my identity. I've gotten much better about it, but once in a while I'm stubborn about something just because I didn't think of it. Point this out to me and I'll get over it.

I need to care about what I do, and feel that it is meaningful

I can usually find something fun, interesting, or otherwise compelling about it. But if I can't, it's going to be really hard for me to be good at it. If an organization is morally or ethically challenged, it's going to be really hard for me to function well within it.

I'm irreverent and I like to joke around

I like to joke around. I use obscenity. Get over it, we're adults. If I offend you please tell me - I do not want to offend you or hurt your feelings. I want to make you laugh.

Informality in culture, except when it comes to doing work

I'm rather casual when it comes to dress (this does not mean being casual about personal hygiene). If you conflate casual dress (shorts, tshirts, etc.) with professionalism and seriousness about work, we are not on the same page.

I'm direct

I value directness and forthrightness over obliqueness and vagueness. I consider clear communication critically important to success. I may ask you to disambiguate your communication, and this may seem aggressive. It's not meant that way, and it doesn't mean I don't care about your feelings. When asked, I will happily disambiguate my own communication. I probably won't actually use the phrase 'disambiguate your communication'.

I like and need to work with people

I like to be part of a team. My work is more satisfying to me when I'm part of a team, whether it's local or distributed. I've been an army of one and I don't much care for it.

Half-assing things annoys me

If you like to cut corners, I will want to discuss that with you. The corner you cut today will cut you tomorrow.

I like to help people

It makes me feel good when I help. That might mean mentoring, pairing in code or design, helping to troubleshoot, helping to triage bad situations, creative collaboration or brainstorming, or any number of other things. If I think I can't or shouldn't, I will tell you why.

I have strong opinions

I am, however, open to having my mind changed.

I like being asked and dislike being told

I may have authority issues.

I like designing systems/software

In addition to the joy of coding, conceiving and planning systems (groups of components that work together to accomplish a goal) is lots of fun.

I like UNIX

I consider *nix and *nix-like systems to be preferable in many situations. At its most basic, human-computer interaction is about manipulating text. *nix-like systems and tools are built on that idea, and I (mostly) find them to be "better". I understand that this opinion is not shared by all people, and I try not to proselytize.

In general I'm very responsive, but I hate Slack

I dislike most messaging systems other than email and IRC. I'll use them, but not on my phone. If you need to reach me right now, call me. That's why you have my phone number. If you need to reach me soon but it's not an emergency, email me or if you must, text me. I'm pretty responsive with email and text. Why do I "hate" Slack? I don't actually hate it. It engenders an expectation of always on, instant responsiveness; the subtext is that if you're not highly responsive in Slack, you're not a "team player". That's horseshit.

What I expect from colleagues

I strive to treat you with respect; please treat me and others with respect

If someone is a bully or a jerk in their default communication style, there's a decent chance I won't get along with them. If I see a teammate or peer getting bullied, I may say something about it.

I expect that you try

It's no fun to work with people who are phoning it in.

I expect to learn from you

I don't think I know all the things. Part of the fun of working together is learning from each other.

I expect you to learn from me

Sometimes, even if I'm not the smartest person in the room, I have something good to share.

I expect feedback

I can probably get better at whatever it is, but you have to tell me about it. I will listen to you.

I expect that you can listen to feedback

If you can't or won't, it sucks to work with you. Seriously. Piss off.

What I expect from my managers

Truth and clarity

Garbage in, garbage out. Tell me what you know; don't obfuscate or compartmentalize unless you're legally obligated to.

Shield me from politics

Politics and infighting are unfortunate truths of being human. Your job is to protect me from as much of it as you can.

I expect feedback

I want to know how you (and the larger organization) thinks I'm doing.

I expect that you can listen to feedback

You want to know how I think you're doing, don't you?

I expect that you have advice for me

I hope you have context that I lack, and that this guides you in guiding me.

I expect that you can listen to advice

Sometimes I have a better take on a specific topic than you do. It's in your best interest to have an open mind.

As a manager, executive, team lead, what have you

My defaults as a manager

One of my most important responsibilities is to provide you the space and context to do your job

See above where I expect my manager to protect me from politics. Crap rolls down hill, but it should stop at me.

I can't help but care about you

If you're on my team, you're part of my crew. I'm fiercely protective of my crew.

What I expect from colleagues

See above.

We'll do 1-on-1s every week(ish), more if you want

It's your time, and it doesn't have to be about tech or your job. It's not a status update. You might have questions for me, or I might have questions for you. It might be about keeping up on what's happening around the company, it might be about professional development/learning/etc. I expect that you'll have things you want to talk about, because I might not always have things I want to talk about.

1-on-1s are not the only time to talk - anytime you need to talk to me, talk to me

I'll try my best to make it happen.

Sometimes tasks are vague

We often have to make decisions without all the info we need. If you think a project, task, work unit, etc. is too vague, tell me. I'll probably agree. We'll talk about it.

I will try to ask you instead of telling you

If I'm not doing that well, please tell me. If something isn't clear, ask me. It's ok if we disagree, but if it's my ass ultimately on the line, I may choose my way instead of your way. If your way is superior, I'll probably go with your way. I might not though, and the reason might not be technical, but I will tell you what it is. The best technology doesn't always win.

I want to know what you're doing

One of the things my boss wants to know is what everyone on my crew is doing. Please make it easy for me to tell them.