If you still think you need a computer science degree to become a web developer, you’re wrong. It’s okay—we didn’t know that, either, until we spoke with Rebecca Miller-Webster, Lead Developer at HowAboutWe and Founder of Write/Speak/Code.
Rebecca was surprised to discover that her Masters in Computer Science didn’t really prepare her for working as a web developer. At the same time, working with open source code provided her with a sense of community, playfulness, and constant opportunities for learning.
We catch up with Rebecca to learn about her professional career, her side projects like the Write/Speak/Code conference, and how YOU can find out if web development is the path for you.
What did you study in college? How does it relate to what you’re doing now?
I have a BA in Women and Gender Studies and a Minor in Computer Science and an MS in Computer Science from Washington University in St. Louis.
What was your career progression like? How did you decide that you wanted to get involved with programming and how did you go about pursuing it?
When I was in high school there was this site called Angelfire that let you put up your own site with HTML, so I’d played with that a little. I liked the internet, so I took Computer Science 101.
It turned out that it was nothing like what I thought it was going to be—it was all about programming in C, which was really intense, but I really liked it. I didn’t understand what the career options were in Computer Science and Engineering. I took a year off so I could do an internship to see what it really meant to be a programmer. I got lucky that a friend-of-a-friend’s husband gave me a chance at his small consulting company that did work mostly for governments and non-profits. The work that I did at that company, building websites and desktop applications showed me that I enjoyed being a programmer, so that drove me to go back to school and finish my degree.
I decided I wanted to move to New York and I got a job working as an application developer at an investment bank and worked there for a year. That was great since they paid me to relocate and I got to move to New York. But I eventually realized I wasn’t interested in working for a bank and I didn’t like what I was building—it was an important lesson for me to learn that I need to identify with what I’m building and understand the end user.
After that, I got a job working at an educational startup. I knew that I wanted to get out of finance, so I started scouring the internet for companies that used the languages that I knew. I came across a list of top startups in New York City and clicked through to see who was hiring to learn more about them. That turned out to be a great thing because I impressed them since I found them that way and not through a job board. I stayed there for about three years.
Then I freelanced for a while and began consulting for an early-stage startup where I was eventually hired as the director of technology. I built their website from scratch and hired out the team. It was an amazing experience to do that, and especially building the website from scratch was really confidence building.
And then I started at HowAboutWe, where I currently work as the Lead Developer.
Where did the idea for Write/Speak/Code come about and how did you go about creating it?
Well, it came about because I wanted it for myself! But there were a few things that happened all at once that led me to come up with the idea. When I was freelancing, I switched from proprietary languages (like Microsoft) to open source (like Ruby on Rails). Ruby has a great community of people, but I felt intimidated to participate.
There was a big conversation going on about the lack of women speakers at conferences and things that happened to women at conferences. Then I saw a talk by Zach Holman at GitHub about open source. He was talking about using it as an opportunity to be playful as opposed to feeling like you have to build the next big thing. That shift in perspective was helpful.
I started thinking about the relationship between speaking and contributing to open source. And then I learned about The Op Ed Project, which is working to increase the number of women contributors to op eds. One of the things I liked about Op Ed Project was that it ends actionably—you finish your session with an outline for an editorial and some concrete steps of what to do next.
And finally I was thinking about what it means to position yourself as an expert and how even college students can be “experts” and can speak about certain topics as experts if they’re given the right forum.
All these things sort of gelled, so I sent a late night email to all the women I knew in the tech scene in New York. This was around December so it was a little slow during the holidays, but then all of the sudden, at the end of January I started hearing back from people saying, “Yes, let’s do this!”
And then it was a whirlwind of planning and getting the word out. It was definitely a team effort, but we were lucky that there was a lot of interest really early. The conference was held in June 2013 and we had about 30 attendees. We’re just starting to plan for next year and we have some bigger ideas for the future, but for now we’re planning on holding the conference annually.
Were you able to apply the idea of leaving participants with actionable items?
Yes, definitely. For the speech day they gave a talk and for open source day they created a new repository on GitHub. We get regular updates from participants, too, like “I spoke at such and such conference” or “I contributed to this open source project.” We’re also working on tracking the numbers in a more concrete way so that we have statistics on what percentage of past participants have gone on to speak or present at conferences.
In your current role as lead developer at HowAboutWe, what is a typical day on the job like for you?
We have stand-up meetings in the morning where we check in with everyone, talk about what people did the day before, discuss if there’s anything that’s blocking them, and troubleshoot as a team.
In general most of my day is spent coding, but we can do that as pair coding (when two people work together) or solo coding (one person working alone).
We use Pivotal Tracker to manage the list of things we need to do. Every two weeks we have an Estimation meeting to talk about what’s coming, how long we think it’ll take to complete it, and decide which projects should be paired and which should be done solo. These meetings are important so that we have our priorities set and a sense of what’s coming.
Once we finish something, we mark it as complete and another developer will review it. If they have any questions or concerns, there may be some discussion. Then we apply it to staging and the QA person makes sure that it works and we didn’t break anything. Once everything’s good, we deploy it to production, so our work is out there. Depending on how big it is, it may go onto the site that day.
Since I’m in a management role, I’ll often meet with the product manager about what’s coming up, how we can break it down into smaller pieces, and what I can foresee that may be technically challenging to achieve. If I’m working on something that has a front-end element, I might also have design reviews with the design team.
Every two weeks, when our sprint ends, we do a “Retro” meeting with the CEO and CTO. We ask everyone to contribute a happy face, question mark, or sad face. Happy faces can be things like “We finished this project” or “I ran a marathon” and question marks can be any sort of unanswered questions, either about our jobs or the company in general. The CEO and CTO sit in on these meetings, so they’re there to answer business questions and larger technical questions. This is actually really cool because we can use the points from the sad faces and the question marks to turn them into action items to guide our work for the next two weeks.
What are your favorite aspects of your job? What are the things you would change if you could?
I love that sense of accomplishment when you finish something and it’s out there and people can use it.
I like being involved from the conception of an idea all the way through to completing it.
I love that you’re constantly learning and figuring out best practices and that you can apply some creativity and thought into deciding how to go about things. It’s always changing, so you’re rarely doing something that you’ve done before.
I think the main challenge is that a lot of other people don’t understand what we do. And this can be difficult because engineers are notorious for thinking things won’t take very long—maybe we’re just overly optimistic! So that can create problems when something takes longer than you expected and you feel like you have to justify it to someone who doesn’t really understand what your work involves.
What advice would you give to college students who are interested in working as a developer?
The really important thing is to get to a place where you can start building things for yourself and talk about what you’re learning on a blog or on Twitter. Continue to challenge your skills and learn new things. If you want to do web dev in startups, learn Ruby on Rails or Python and Django. It doesn’t really matter which one you choose—just do it!
You should also get involved in the community. Join Stack Overflow.
I will note that I don’t think you actually need a Computer Science degree. Traditional Computer Science might not even be the right fit if you’re interested in web development, so don’t feel like not having a degree is a barrier to you pursuing a career in this field.
What are some of the biggest misconceptions about working in tech?
- “Programmers sit in a corner and don’t talk to anyone.” There’s actually a fair amount of communication with design, product, the people who manage the features and priorities, even marketing and customer service, depending on the company. It’s true that there is less of a focus on meetings, but there’s still plenty of communication in other ways, like pairing, estimations, retros, and standups.
- “There’s only one type of person who’s a good programmer.” There’s actually a lot of opportunity for lots of types of people, and the more diversity the field includes, the better it gets.
What is your favorite programming language and why?
Maybe this is a stock answer, but Ruby. I like it for a couple reasons. It’s a language that was designed to be nice for programmers. It’s elegant. There’s not a lot of extra semicolons and brackets. It’s powerful and nice to look at.
I also really like the Ruby community. It’s not perfect and suffers from a lot of things like tech and the world in general, but at the same time it’s a really focused on community that offers a lot of formal and informal teaching. The Ruby community is focused on creating things to make developers more productive, and it also seems to be focused on giving back and being nice and caring.
My mom has a PhD in Physiology and she gave me good advice when I was in college. She said, “You need to find other women, other people in your classes to help you. It’s important to have a network to work with and learn with.” That started me on a lot of the path—it was a personal desire to get involved and help other people.
I was a friend of one of the guys who started GORUCO and gave him a hard time about not having any women speakers. It’s been cool to see how the conference is put on and learn all the behind-the-scenes things that need to take place, like organizing speakers, finding a space, thinking about food, etc.
Talking at RailsConf was a goal of mine from last year.
I started positioning myself as a mentor. I’ve had a few interns who I’ve mentored and my husband is learning to be a programmer. Through those experiences I realized that there’s not a clear path to becoming a programmer and there are lots of soft skills that people don’t know.
The community around an open-source language can be really special. They’re focused on continuous learning and giving back to community. As an adult, that’s not something that people in general often do. Many adults tend to narrow their expertise.
There are already a lot of good things about this community and I wanted other people to see that and I wanted to bring them into that. If we can expand the conversation to get more diversity, that’ll make it even better.
I’ve learned a lot by trying to backtrack and think about where I was in a certain stage to give people advice based on where they are. Just the psychology of learning is really interesting, but finding people who are excited about becoming software developers is also really validating.