Hi there. My name is Aaron Kalin and I’m here to tell you “Don’t be nervous.” Actually, I’m really here to talk about how to break out of your shell. People in technology, especially developers, tend to be introverted. Nothing wrong with that, but it can’t hurt to be a little social and put yourself out there. I’m going to share my short story in the hopes it might inspire others out there in a similar situation.
Let’s jump back to 2006. At the time, I was a fed up PHP developer working freelance. Ready to quit programming from lousy contracts and employers taking advantage of me. A friend messaged me the year prior about this new web framework called Ruby on Rails. It quickly gained popularity from the 10 minute blog video. A conference was recently announced to be held in Chicago. I assumed RailsConf would be my ticket to a new career in Ruby.
I arrived early to the first day of the conference during workshops. Since I barely had enough for the conference ticket, I went next door to the open space and sat down at a large round table. Soon, others started to stream in and next to me sat Chad Fowler. Being too nervous to introduce myself, I kept quiet and kept coding.
At some point in the day, someone piped up and asked around the table about what we were working on in Rails. Eventually I chimed in with “I’m porting a PHP app over to Rails, but I’m wanting to use this attachment fu plugin and there isn’t much documentation, need to ask this technoweenie guy about how it works.” That is when Chad Fowler leaned over and said “You should ask him, he’s sitting right there” as he pointed out Rick Olson, also known as technoweenie sitting across the table. That was an utterly embarrassing moment for me and it gets worse.
The next day the conference was in full swing. I sat down to lunch with two gentlemen. After introducing myself this time, I learned one was Tom Mornini and the other was a speaker, Ezra Zygmuntowicz. Both were about to create a startup around rails deployment called Engine Yard. After some discussions over lunch about my work history, Tom handed me a business card and asked me to contact him about employment at his new startup. I wasn’t confident enough to respond, thinking I lacked the skills needed to work with them. Don’t worry, this story gets worse.
Try not to be a fanboy
On the final day of the conference, I was headed down the hallway before the concert with Why the Lucky Stiff and the Thirsty Cups. I spotted DHH heading to the lounge area. Thinking this would be a cool chance to meet the creator of Rails, I seized my opportunity and introduced myself. What proceeded afterwards was something along the lines of “Hey David, im such and such on IRC, I submitted a documentation patch and thanks for making Rails” or at least that is how I think it was said. I was so nervous and so amped up that the entire sentence came out in one long statement with no punctuation. As David nervously shook my hand. I’m sure his impression of me was probably “What a creep!”
At the end of the conference, I was able to network enough to get two freelance contracts. One was a project to port a PHP application to Rails and another was to move an old ASP site to Rails. What I did not know was that both projects were already spiraling out of control when I arrived. Not able to do much, they quickly turned into the two worst contracts I have ever executed in my career. Quickly leaving both of them, I fell into depression, thinking I could not hack it in Rails. My lack of interpersonal skills has finally bitten me hard and I paid the price.
What was I to do? I still loved programming and had been doing it for over a decade at that point. I was hurt badly, but still in love.
Instead of running away from programming, I decided to face my social anxieties directly. I wanted to join a retail store to be put in front of customers and learn how to interact. This would provide valuable skills in customer service, negotiation, and empathy.
It wasn’t long before I was hanging out at the local EBGames (now Gamestop) and was soon offered a job there. The manager initially did not want to hire me because of my obvious lack of customer service skills, but felt I could learn with training. Eventually I got the hang of things and soon ran into people who worked at the local Apple store. After applying several times, I eventually got an offer to work there about 2 years after starting with EBGames.
Working at Apple was very different given the massive amount of traffic to their stores. I joined just past the initial iPhone launch and business was picking up steadily. I eventually joined the Genius team and was soon in a customer service position. Nothing teaches you empathy faster than consoling a parent who lost their child’s first few years of digital photos because they forgot to back them up somewhere. That job taught me a lot about working with a team, empathizing with customers, and explaining very technical subject matters to customers.
Eventually I realized it was time to get back to programming. Roughly three years later, I started applying to different Rails developer positions. Given how long I had been away from programming, my chances were fairly slim to finding something. This is where I started focusing on companies offering internships or apprenticeship programs. A prominent apprenticeship I read about was with Hashrocket and I applied to their Chicago office. There was one problem with that application. They did not have an apprenticeship program in Chicago. After some persistence on my part, I was eventually hired on as a developer.
All those painful experiences taught me a few key things about how to break out of my shell. I hope they can help you too with advancing your career and helping your life overall.
Be sure to network with others. Not just on-line, but off-line as well via meetings or local user groups. Shake hands, repeat names and make connections. You never know who you’ll meet as it could lead to awesome things for you in the future. Meeting the organizers of Chicago Ruby lead to my first presentation and my success thereon lead to speaking elsewhere. You don’t have to be a social butterfly to be effective at networking.
There are a few reasons why I present at conferences and user groups now. Chief among them is to force myself to meet others. It’s possibly not for everyone, but something to have as a goal when you work on your inter-networking skills. Lots of people will help you prepare for a presentation, just have to ask. User groups are usually a great start, but go smaller and present in front of some of those people you networked with already so the pressure is not as high.
Awkward is good
I have gone to large conferences and small user groups, but you can tell I’m shy. Working myself up to saying ‘hello’ instead of a head nod is difficult. Despite having done presentations in front of 300 people. Change won’t happen overnight, but you have to be aware you have those hangups and work past them. People around you are probably just as nervous as you and breaking the ice has a very positive effect. Stay positive and keep pushing yourself. It’s fine to extrovert yourself once in a while then you can go right back to being introverted. You’re just as beautiful either way.
I hope this post has helped inspire you as much as it has others when I give this as a lightning talk at conferences. My story isn’t very unique and I know developers who struggle with depression or social anxiety. I’m fortunate to have figured out a way past my quirks without medication, but recommend you seek a therapist if you still find it difficult. A lot of why I stay around the Ruby community is the large group of really helpful and smart people. Stay positive folks and remember. Don’t be nervous.