Giter Club home page Giter Club logo

documentation's Introduction

README for Wade Armstrong

How to Use This Document

We’re working together. That’s awesome! Also awesome is if I can make your life as a developer easy. Here’s some basic info about me right out there, to help you:

  • Get some idea of what you’ve gotten yourself into.
  • Have the opportunity to proactively bring up any areas in which you think we might find conflict so we can address them from the get-go.

(If you’d like to write your own README and make all the above reciprocal, that would be equally awesome!)

This document is definitely not a substitute for face-to-face meetings, or even non-negotiable; I’m happy to discuss anything in here. It’s just a quickstart. If you've worked with me and think I said something here I don't hold up in life, make a PR against this document.

Why to Read This

We’re teammates. I am also your manager, so it’s my responsibility to put you in a position to succeed and to prepare you effectively for the challenges you will have in this role. One such challenge is figuring out what the heck your manager is on about; similarly, I need to help you succeed in getting what you need from our relationship.

What Do I Do Around Here Anyway?

What the Org Chart Says My Job Is

I’m a Team Lead, which means that my job is to:

  • Participate in architecture for projects within my team’s purview, and
  • Manage on-call and team project schedules for my team, and
  • Lead the team as we write code together, using tools like
  • Code reviews, which I will provide regularly, as well as
  • Timely feedback for all team members, to ensure we all make the
  • Annual goals that we’ve set together, while
  • Providing the resources to help us all learn new skills and improve as developers, and
  • Writing some code, if there’s time left over

What Else I Think My Job Is

Ultimately, I’m a tool that increases the productivity of my team, not the one who actually makes things happen here. In my mind, that means that I should:

  • Get out of your way
  • Get others out of your way, if you’re being blocked
  • Get you the information/collaboration you need from other parties
  • Create systems and processes that encourage ownership and quality
  • Help you get the resources to learn anything you need to succeed here at Synacor
  • Encourage a collaborative, supportive environment, in which all team members are welcomed
  • Make the team a psychologically safe place for all its members

What I Don’t Do

  • I’m not the official decision-maker for the team
  • I’m not the best developer on the team
  • I’m not the only [code review, architectural advice, etc.] that matters
  • I’m not the only conduit of information between this team and other teams at Synacor

My Style

I’m an introvert, so I can be withdrawn (or, um, awkward) at the best of times. However, even if I’m quiet, and have headphones on, that doesn’t mean that I’m not available for you. Feel free to interrupt me at any time. If I’m on a phone call, I’ll let you know.

I stick up for my teammates. I will speak up if I think someone’s getting a raw shake, even in casual conversation.

I believe in ownership; if you’re interested in something, it can be yours. I will let you keep it until you prove you shouldn’t have it (which is hopefully never). I may even let you own things you stand a real chance of failing at, but I’ll also make sure you have the resources to succeed. I’d rather you fail trying something too audacious than succeed by flying under the radar.

I default to ‘yes.’ I will try to get things done for our client, our team, and you. Nonetheless, I will say ‘no’ if needed, and will always point out the risks in any choice.

I love a good process. I will spend time automating well-understood things, whether with a shell script or a template in Word. This ensures we all get the best results, in aggregate, over time.

I believe that successful relationships can only be symmetrical; I can’t ask more of you than I will offer to you. So, I will share with you if I’m stuck, or failing, or having a bad day, or having a great day, because I want you to share all of these with me. We all succeed when we communicate in a frank, adult way.

I’m much better at positive reinforcement than negative reinforcement (and enjoy it much more). I will give you all of the support you need to do your job, overcome your impostor syndrome, learn new skills, and overcome challenges in your life. If you’re the type of person who needs negative reinforcement -- for instance, if my best response to you not completing a ticket is “don’t do something dumb like that again,” rather than “I believe in your ability to get tickets done, let’s find a way to make that happen next sprint!” then you should let me know.

Diversity and Inclusion

Diversity and inclusion are two of my top priorities as a manager and a human being. But I come to this job -- like all human beings -- with biases. I will always try my best to be inclusive and to foster an inclusive environment, so please let me know if there are ways I can improve. If you’re not comfortable bringing them up to me directly, feel free to provide your feedback via a co-worker or my manager. It is always unacceptable if I or anyone on our team acts in a biased way against you, and it is always my job to stop it, whether I’m the bad actor, a teammate is, or my boss’s boss is.

My Schedule

I don’t believe in work-life balance. You can change your job tomorrow; you can’t change your life tomorrow. That means life always has to trump work.

I tend to work 9-5. Some days, I’ll leave early for a family activity, such as Little League, and then finish up later. You should work whatever hours work best for you, I won’t worry so long as you don’t miss scrum ceremonies and do get your work done.

If I communicate with you after-hours, for instance in HipChat, unless I ask for a response now, you can assume I just left a message there for you to see in the morning. Similarly, if you contact me after-hours, please make it clear that you need a response now.

I have a lot of meetings on my calendar, which I keep public. If you want to set a meeting with me, set it for the open time that works best for you.

How to Best Communicate With Me

If you want any kind of a fast turnaround, please HipChat me. I’ll check HipChat as soon as I’m able to give anything besides my current task my full attention. E-mail is fine, and I try to run on inbox zero, but it could be 24 hours before I really put any thought into your e-mail. In person is great too, but I’m almost always going to be clearer in writing than in person, so if you want a detailed technical answer either HipChat me, or talk to me and ask for a summary of our discussion via e-mail.

If I’m on a call or in a meeting, then HipChat me; I’ll check it as soon as I’m able.

If something is really urgent, text me. You can get my number from the on-call list if you don’t have it already.

1:1s

I’m a big believer in 1:1s. If you’re remote, we’ll have a 1:1 every 2 weeks; if you’re in LA, we’ll have a 1:1 monthly, since we’ll be working face-to-face continuously (if we’re doing it right). Our 1:1 is your meeting -- I have stuff to talk about, and sometimes I’ll lead with that, but mostly my goal is to make sure that you’re enjoying and growing in your job.

If I have concerns about your performance, I will bring them up no later than in our 1:1 . If you’re concerned about your performance, this is a good time to bring it up too.

I will do everything possible to not reschedule our 1:1s; they are my highest-priority meeting. If I feel you’re in the zone, or the weeds, I may suggest we move our meeting for your convenience.

How to Help Me

If you see me doing something you’re interested in, please feel free to ask to be involved. I would love to hand off any appropriate task to you.

If you’re excited about a project, and would like to own it, I’d be more than happy to make sure you have the space and resources to do that.

If you don’t feel I’m living up to any of my commitments, please do let me know, either directly or through a teammate/my manager. I’m always trying to improve.

What People Misunderstand About Me

I’m calm, which means that I won’t freak out about the issue you just brought up to me. This is not because I don’t feel urgent about the issue, but because it benefits none of us if I freak out. For serious issues, one of my favorite quotes comes into play: “We have a lot to do, and very little time, so we must work slowly.”

I love a process, and sometimes this leads to the conclusion that I don’t care so much about creativity. In my experience, a good process makes it easier for people to spend their energies in the most creative and interesting ways.

If it seems like I don’t hear you sometimes, I’m not ignoring you. I have an auditory processing disorcer, which means that I cannot always process the sound of people talking to me, especially with loud background noise. Just come closer (in a very loud place, I'll even try to read your lips), or, if needed, switch to chat.

I tend to use terms like “I expect so” or “it would surprise me if…” rather than “yes” or “no.” I only say “yes” or “no” when I mean “absolutely yes” or “absolutely no.” I see the world as a distribution of outcomes, and won’t say “yes” or “no” unless we’re far enough out on the tails of those possible outcomes; otherwise, I’ll say something that’s within my level of confidence. If you want to pin me down to a “yes” or “no”, just ask; I’m fully capable of giving you that answer.

I have no idea how to end a conversation. If you think I'm walking away or otherwise ignoring you in the middle of a conversation, it's because I misunderstood that it was over. Please let me know, I'll feel bad and be happy to jump right back in!

I can be cranky. It's not you, it's me. My crankiness almost always has nothing to do with anything you've said or done. I do try to be less cranky, but I'm not yet succeeding at that. I actually probably like you fine.

Thanks for reading, and I’m excited to work with you!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.