Practical Empathy, or: How I Stopped Hating Pair Programming

Pairing works better for me nowadays because I realized that pairing is a programming skill. Just like for loops, code review, or domain modelling. And like any other skill, it can be taught and learned. People love or hate pair programming, and for good reason! It's a tough skill!

Introducing "Let's Pair!", A Zine Series on Effective Pair Programming Techniques

While some see “Privilege” as a four letter word, as a leader it's critical to understand how team members' backgrounds impact them. People love or hate pair programming, and for good reason! It's a tough skill!

GraphQL and Rails - A Brief Introduction

While the marketing will tell you the concepts behind GraphQL are simple, a full GraphQL implementation is quite complex. Here are a few tips to help you learn to use GraphQL and Rails effectively together.

Interviewer Skills Part 3/3: Timing your interview

The candidate has gone off on a wild tangent and you're not learning anything useful. What do you do? should you bring them back to the topic you want to cover? if so, how? This is Part 3 of a multi-part series covering some of the topics introduced in our RailsConf 2018 workshop, "Interviewer Skills".

Evolving process for evolving teams

Like many of you, we hold standups to sync up on what people are up to, surfacing and supporting through blockers, and getting in a little regular facetime. We’re currently on our third variation of the year for how we do our standups. And today we're sharing our recipe for learning if your team process should change, and how to change it.

Interviewer Skills Part 2/??: How to create interview questions

You know what attributes will make someone the right addition to your team, and have specific enough descriptions that there can be no room for ambiguity. How do you translate these into interview questions? This is Part 2 of a multi-part series covering some of the topics introduced in our RailsConf 2018 workshop, "Interviewer Skills".

Interviewer Skills Part 1/??: Why set specific goals

How do you know if someone will be the right addition to your team? What happens if you both agree it's important to hire "no jerks" or people who are "smart and learn fast", but have different ideas about exactly that might mean? This is Part 1 of a multi-part series covering some of the topics introduced in our RailsConf 2018 workshop, "Interviewer Skills".

Return from RailsConf + Interviewer Skills Part 0/??: Intro

You asked us for it in the halls of RailsConf and on Twitter. This article is the first in a multi-part series going over some of the topics introduced in our Interviewer Skills workshop. We have a list of WIP topics. What do you most hope to learn? Let us know.

Twenty minutes

Recently I was chatting with a friend who works as an engineer -- a real engineer, as in buildings and bridges and structures. I was curious what a technical, regulated industry's interview process might look like. What might I learn from her interview practice that could teach me about being a better interviewer in the software industry? Her entire interview process takes twenty minutes. For an industry where shoddy technical work could lead directly to human death. What's the secret?

Tell me about a time when...

When as an interviewer must you ask about specific experiences, and when can you ask what a candidate would do in a hypothetical situation? What can you ask yourself to know the right question to ask?

Embracing Uncomfortable Refactoring

Sometimes refactoring is fun. Sometimes refactoring feels therapeutic. Usually, those kinds of refactoring are the kinds we don't need.

How to interview your future manager

What you need out of your manager may be different than what your colleagues, your friends, or your peers need -- and that's ok! What can you do to discover if the candidate interviewing to become your manager is the right person for the job?

A primer on setting up your remote employee

Two developers, both alike in dignity. In a fair tech valley, where we lay our scene.
...you know what iambic pentameter is hella hard. How about we jump straight to talking about what to do if you have a lonely remote developer who's not succeeding on your in-office team.

A brief adventure in ActionMailer debugging

Are you making changes involving ActionMailer and hitting `(object doesn't support #inspect)`? Remember what `ActionMailer::Base.mail` is expected to return.

Designing Your Apprenticeship Program for Outcomes

Are you trying to build an apprenticeship program? Building cross-organizational buy-in can bolster your program's success. Learn how to align your apprenticeship program with your organization's desired outcomes.

Understanding, Owning and Leveraging Your Privilege In Tech

While some see “Privilege” as a four letter word, as a leader it's critical to understand how team members' backgrounds impact them. Learn how to own, understand and leverage your privilege.

An Introduction to Software Apprenticeship

Software apprenticeships develop your existing talent and help you expand your teams more quickly and effectively. Learn the basics of designing an apprenticeship program.