How To Move From Customer Support to Engineering in 5 Steps

When I explain that I did a career move from customer support to full-time software engineer at Eventbrite, I’m often met with dubious looks: “Wait, what? How is that even possible? How did you do that?”. They are even more surprised to learn that I didn’t go back to school or even take a coding boot camp.

With the right strategy, you don’t need a technical degree to become a software engineer. Read on to learn about several steps you can take to move from a customer facing role at your company into engineering.

A pipeline to Engineering within Eventbrite

I’m not the first to do a career move from customer support into software engineering. At Eventbrite alone, eight people have moved to technical roles in engineering from our customer support team. This pipeline has also been beneficial for our dev teams in many ways. For instance, we’ve seen an increase in customer empathy when a former customer support representative joins, which usually helps to boost quality in our product development. In fact, roles in quality assurance (QA) are an especially good fit for those coming from customer support. This step in the pipeline can be a good choice for those looking to later move to full-time software engineering roles. (For more info on Eventbrite’s QA philosophy, check out Andrew’s post on rethinking quality).

As a high performer in customer support, you too can move from a customer facing role at your company into software engineering. However, you won’t get there by continuing to do only your assigned role. You need to take some actions to put yourself into a position to succeed.

A step by step approach

Imagine this conversation: an engineering manager is chatting with her team about a new role she’s opening up for a QA engineer to join. What if at the moment she announced this, her team immediately piped up with “We should hire {insert name} for that role, {he/she} would be fantastic at that!”? How do you guarantee that your name is the one brought up?

For me, the five steps outlined below were crucial to making sure I’d be recognized when a hiring opportunity came up for a QA engineer position. I was later able to make another transition to a full-time software engineering position because I continued these practices of putting myself into a position to succeed.

Step 1: Be a top performer in your day job

Before everything else, dedicate yourself to excellence in your core role. You want to be recognized as a highly qualified individual. Maintain a high customer satisfaction rating while still answering a high number of customer queries. Your company will likely be more willing to provide you with new opportunities in engineering if you are a top performer in your current role. Top performers are smaller risks for lateral moves, and no company wants to lose high-potential talent to another company.

Step 2: Build relationships in engineering

You’ll need to get friendly with engineering so that your name is top of mind when new opportunities are available. Grab a 1:1 lunch with individual developers and ask them about their path to software engineering. I talked to a mix of engineers: QA engineers, senior software engineers, junior software engineers that had gone through coding boot camps.

Gain some name recognition by leading a hackathon team and presenting your team’s work to the company. You don’t need engineering experience to do this. In fact, I led a project with a cross-functional team of support members, engineers, and marketers having no technical expertise at all. It was a small project, but it allowed me to work with engineers and to show my interest in engineering projects to the company. Plus there were plenty of engineering leaders watching the project demos who afterward recognized my name.

Step 3: Leverage your product expertise

Your product and customer expertise are invaluable to product and engineering. Leverage this knowledge by sharing it with your engineering teams and advocating for your customers. Reach out to engineers to ask for help when a customer encounters a bug. Alternatively, tell a product manager about your ideas for small product improvements that would enhance the customer experience.

The first time I did this was intimidating, but I was surprised to find that the engineers on the other side were more than happy to help. By doing this, you’ll establish yourself as a trusted customer expert. Engineers and product managers will begin to turn to you when they have questions or ideas for how to build the product, and later they will want to have your expertise on their teams full-time.

Step 4: Invest in your technical learning

Prepare yourself for a transition to engineering by learning the basics of whatever programming language your company uses. There are abundant resources for you to learn new technical skills. I started with Python, Javascript, and SQL by taking free Codecademy classes online. If your company already has a good learning culture (check out Randall’s post on supporting junior engineers), ask to attend peer-led training or to participate in a mentorship program to supplement your learning. Show everyone around you that you invest in your learning by spending time outside of work developing these new skills. Even a consistent 30 minutes per day can be very effective. If you demonstrate a growth mindset by dedicating time to improving yourself, you will also build trust with engineering leaders who will be more willing to disregard your lack of formal technical education.

Step 5: Advocate for yourself

Carefully look for situations that might help you, today or later on. Even bite-sized opportunities can be beneficial in the long run, but you must advocate for yourself to take them on and reap the rewards.

While I was still in customer support, I looked for an opportunity to get involved with our Support Triage team. That team’s responsibility is to investigate incoming bug reports and send them to engineering. It wasn’t an official position, but I saw that they were overwhelmed with their workload and I volunteered my help. I was able to contribute to the team by investigating bugs, but I also got to learn about our bug process, try out new tools, and talk to engineers. Through this work, I built a reputation for submitting well-investigated and detailed bug tickets. That helped me stand out when a QA position was later opened up.

Another example of advocating for myself happened after I was in QA for a few months. I asked for help from my manager to learn how to fix small bugs I reported, resulting in dedicated pair programming time. After that, I asked for small feature projects that I could pair on with my team’s developers to continue building programming skills. Some time later, I asked my leaders in engineering to move me to a full-time software engineering position. They helped me make the transition with little hesitation. Even though I have no formal education in computer science, I had proven to them that I was invested in my learning and capable of being a software engineer.

Final thoughts

My collegiate track and field coach’s favorite piece of advice to me was to “Put yourself in a position to succeed.”

In the running world, this meant pushing hard during practice sessions to get a little bit faster, stronger, and better every day. This way you allow yourself to be successful on race day when it matters the most. You had already put in miles of effort and hours of mental practice to support a personal best at the finish line. This same strategy applies to lateral career moves as well. Take the time now to prepare and put yourself in a position to succeed so that you are ready for new opportunities when they arise.

I hope that the steps above will help you get closer to achieving your career dreams of moving to software engineering from a customer support position. Of course, beyond these five steps, there are many other details to discuss such as communication strategies, technical learning tips, and how to create a support system.

If you have any questions or want to chat more about how I made this career move, feel free to reach out. Leave a comment below, or you can also reach me at @snazbala on Twitter or through my website at saharbala.com.

P.S.: Engineering leaders, keep an eye out for a follow-up post. I’ll cover why you should hire QA engineers from customer support and how you can create a supportive culture for these lateral career moves.

Leave a Reply

Your email address will not be published. Required fields are marked *