00:00:20.480
Our next storyteller is Davy Stevenson. She's from Portland and has been working with Ruby for almost six years. Ladies and gentlemen, please welcome Davy Stevenson.
00:00:32.360
Hey everyone! I was inspired a bit by James's talk to start the opening mini-story within my storytelling session. People often ask me, 'Is Davy your real name?' The answer is usually no; Dave is not my legal name, and no, you won't get to know what my real name is. For me, Davy is my real name; it's how I represent myself. It's my name on the Internet. Even though people don't necessarily expect to find me when they read 'Davy Stevenson', I'm pretty proud of my name. I find it interesting that out of this group of storytellers, we have two Davises. That's my little secret to you—not many people know about it, so keep it a secret between my favorite 200 closest friends.
00:01:14.000
Anyway, I thought that was interesting and coincidental. I haven't met too many other Davises. What I'm really talking about today is team building. The story starts about four years ago when I joined Elemental Technologies as their first Ruby on Rails engineer. Elemental develops video transcoding software, helping companies like Comcast and HBO produce their services like Comcast Xfinity and HBO Go.
00:01:45.560
You might not be surprised to hear that most of the engineers there are not coding in Ruby; they're working with C and C++. However, they found that when trying to productize their video transcoding technology, using Rails and a web framework worked really well for creating a user interface and providing a straightforward REST API for automation. This fit nicely with the need of a startup to iterate quickly and develop features rapidly.
00:02:10.720
For the first two years, I was a team of one, handling all the Ruby on Rails work. Fortunately for Elemental, they were doing well, and soon I realized I couldn’t keep up with all the work. We needed to hire more Ruby on Rails developers. As we all know, that can sometimes be difficult. Over the next year and a half, we managed to bring on three more people, and during that time, I got to transition into a leadership position.
00:02:59.760
Management approached me and said, 'We’re doing really well; you need to double your team within six months.' I thought, 'Wow, that’s going to be fun!' This is a competitive market, and there aren't many great Ruby engineers out there. I decided to think outside the box. I'm a big proponent of diversity in teams; a team needs to be diverse on many axes, not just the standard demographics of gender, race, and nationality.
00:03:23.200
Diversity should also include other factors, like introvert versus extrovert, experience levels (junior versus senior), and socioeconomic backgrounds. Anything that provides someone with a unique knowledge base or insight is something we can leverage on our team. This means our overall knowledge is broader. When looking to hire these new team members, I really wanted a diverse team, so I spent considerable time on outreach.
00:04:21.479
I reached out to local user groups and offered Elemental's space for their use. You can bribe engineers with beer and pizza, and they'll show up! We also got the company involved in regional conferences, like many of the sponsors are doing. Open source is another great way for outreach, which is about giving back and showing that your team and company are committed to the community and thus are a great place to work.
00:05:05.039
Another important aspect of diversity in team building is during the hiring process. Sarah mentioned how we tend to evaluate candidates based on what we already know. When you're interviewing someone, you're inherently comparing them against the people you already work with on your team. If you don't combat this natural bias, you’ll likely create a homogeneous team. To avoid this, you need to think about how the candidate's uniqueness could benefit the team.
00:05:51.000
The next part about building a team is understanding team dynamics. If you successfully build a diverse team, you’ll have people with various personalities, which can sometimes lead to personality conflicts. It’s crucial that everyone within the team understands the importance of supporting their teammates. They should foster an environment where individuals with less experience feel comfortable asking questions.
00:06:14.000
This creates opportunities for learning and can also lead you to reflect on your own processes and products that you hadn’t previously considered in detail. Your team should be a group of friends, people who genuinely support each other. After six months, I successfully grew my team to eight engineers, and they were a diverse group. I was very pleased to see that they were 33% women. This is pretty impressive.
00:06:30.500
Unfortunately, a challenge we face is that, within Portland and our communities, we still see a predominance of white faces, and that’s an area we should focus on improving. On my team, we had individuals who ranged from introverted to extroverted, including someone who graduated from a dev boot camp and came through a program to become a web developer. She was fantastic, asked insightful questions. We also had someone who changed his career mid-30s from public policy to programming.
00:07:06.000
There were also team members who transitioned from graphic design into programming, in addition to the usual candidates with CS degrees entering programming careers. The rewarding aspect for me was that my team got along very well—they became friends. They initiated 'Doughnut Fridays' where we would all wander over to grab donuts and discuss the codebase.
00:07:44.259
Other engineers in different departments expressed jealousy because their teams didn't interact the same way. Knowing you have a diverse group of people to reach out to for help makes it much easier to ask questions and seeking opinions on how to improve code or design.
00:08:10.640
Creating a culture where this kind of collaboration is the norm is essential. I’ve spoken about teams in a company context, but all of these ideas can apply to our wider community. Our Ruby community is one significant team, and we should strive to make everyone feel welcome, encouraging them to join and stay within our community. We have to be proactive about being friendly and open, ready to answer questions from everyone who comes in.
00:09:05.640
Thank you very much!