How Junior Developers Can Tackle the Job Search
Ever wonder how someone made it to the successful position they have? Curious about how their career began? Interested to hear their suggestions for those who are just starting out? We recently were able to sit down with some industry leaders who were willing to share their tips on career growth and their own career journey in a series of conversations.
In this edition, we’ll get a glimpse into the career of Courtney Kennedy. As the Engineering Manager at Netflix, she leads a team of developers whose work impacts more than 180 million subscribers. Courtney shares her non-traditional path to get to where she is today, what is important to her team’s culture at Netflix, and her advice for junior developers.
What you need to know:
- You don’t need to follow a traditional path or even have a CS degree to start your career as a programmer.
- You may need to make some compromises to get your first tech job, but with even a year of experience, you’ll be better positioned to find a role that ticks all your boxes.
- Startups can be a great place to learn and grow, but consider whether you’d get the support you need.
- Imposter syndrome affects a lot of us, but realize that you’re viewing yourself through a skewed lens. Reach out to others for support and clarity to help you move forward.
Hey Courtney! Thanks for chatting with us. I see you majored in Physics and have a Masters in Electro-Acoustic music. What is Electro-Acoustic music?
Courtney: Yeah, it’s an interesting name! The idea behind that program at Dartmouth was for it to be a fundamentally interdisciplinary program. They accepted three students every year into a two-year masters program. They wanted to find one person from computer science, one person from physics and one person who was a composer. Then all the students in the program took a set of classes together, along with any other classes they wanted to take from throughout Dartmouth. The program combined a study of 20th century computer and electronic music with an exploration of audio processing, acoustics and music perception and cognition. Along with the subjects we studied, we maintained the electronic music studio on campus and composed original pieces, which we presented in concerts from time to time. The program has updated its name since I attended. It’s now called the Masters Program in Digital Musics.
How did you get started in engineering?
Courtney: I kind of fell into it. I don’t have a traditional education for a software engineer. In college I was a physics major at a liberal arts college called Holy Cross. I did a little bit of developing...in Fortran! I had a summer fellowship at Yale’s high energy physics lab where I did some programming and I did a project my senior year that included programming as well. I don’t have much formal education in Computer Science though. When I got to Dartmouth for my Masters, I decided to learn C++ as I had a lot of opportunities for independent study and learning. In my second year, a local company that made digital audio workstations hired me as an intern. It was really a great opportunity. I didn’t have much to offer beyond my interest in it. I did that internship the whole second year at Dartmouth and they hired me after I graduated which let me get a year of experience as a professional software engineer. Once you get a year on your resume, you can then begin to apply elsewhere and have enough experience to get that next job.
For a junior developer who is just starting out in their career, how selective do you think they should be about their first job?
Courtney: Getting that first job is always hard. You probably have to make some compromises. For me, for example, I didn’t really want to stay in New Hampshire when I graduated from my Masters. I wanted to return to Boston where all my friends were. I realized that it was going to be difficult for me to get hired cold into a company that didn’t know me, given my lack of experience. I just didn’t have the resume. I took some personal sacrifices to get the experience I needed.
When evaluating a company for your first job, you want some assurance that you will get some help when you need it. That can take a lot of different forms. I think start-ups can be great places for junior devs to grow. They need engineers and they don’t have as big of a budget so they are willing to take less experienced people, but you can wind up in a situation where you are in a room full of people with little experience. Even in that situation though, it may be a good opportunity to learn how to be a leader. When interviewing for your first job, look at yourself and consider what you might need to succeed. Do you need to have access to people who will mentor you? Or are you somebody who could be a self-starter and all you need is an opportunity? Then make your decisions from there.
When you were first beginning did you have a manager or mentor who was instrumental for you? What made them great?
Courtney: Oh definitely, I can think of many people. In the very first job after my internship, my boss was fantastic. He was very supportive, and had a broad perspective and gave me challenges and opportunities. I really learned to program in my second job though. After I got that one year of experience after my Masters, I went to work for a start-up. It was a total departure from the music and audio work I had been doing. It was founded by an MIT professor and made stress test machines for diagnosing heart disease. It was a complete left turn! Turns out, a stress test machine and a digital audio workstation have a lot of parallels in their functionality. With a stress test machine, the computer captures data from electrodes that are attached to the patient. It then digitizes and processes that data. That functionality is analogous to what a digital audio workstation does with audio streams! You can take the architecture and workstation of a digital audio workstation and more or less plop it down and build a stress test machine on top of it. Even though it was a totally different industry, I had learned some concepts at my first job that were directly transferable to it.
At that company, I was the third software engineer. The other two engineers were from MIT. I was the one with the least experience. We were coding in C++. The company was regulated by the FDA, so we literally had to ship software with zero bugs and we had no QA engineers the first year that I was there. I became the QA engineer for a while. I would work as a developer from 10-6, have dinner, then work until 10pm every night as a QA engineer. I really learned how to program at that company, and the testing experience was incredibly valuable. Being able to test your own code, and take on the perspective of a Quality Assurance engineer, is a valuable skill for any developer. Because the standard was so high, the code reviews we did for each other were very rigorous. I learned so much, and even though it was really hard work, I am thankful for that opportunity.
Many people aspire to someday be an Engineering Manager at Netflix, how did you grow into the role you have now? What positions did you hold before that set you up for success in this position?
Courtney: I haven’t been that deliberate with my career, honestly. I didn’t have a 5 year plan or anything to get this position. I would try to make the best choices I could from the options available to me at any given time. I do recall a specific point in time when I decided that I wanted to transition from being a coder into leadership. I was at a company called Avid Technology in Massachusetts. They make video and audio authoring products, and I worked there as a software engineer. I was getting tired of sitting in front of a computer all day. I thought to myself, “I have a broader skill set. I can do more. I think I can have more of an impact.” I wanted to contribute to strategy and help set the direction the company was going in. That’s where it started, and then I went and got an MBA at night while I was working full-time. It took me four years to get my MBA.
Do you still code now that you are in leadership?
It seems like you are always learning! Tell me about your team now. How do you foster a learning environment for your team?
Courtney: I have a large team right now, and I delegate a lot to them. I delegate as if it’s an Olympic sport! Our team has a pretty broad set of responsibilities and a lot going on. It takes a certain kind of engineer to handle that. They have to do some of their own project management, and they have to be good at collaborating and having discussions back and forth, and negotiating with other teams. They have to be good at proactively saying “I don’t understand this, I need to go learn about it” and then figuring out how to best do that. I try to give suggestions and point them in the right direction when necessary but really, each engineer is responsible for their own learning. We also learn from each other, we take outside classes, we teach ourselves. A part of my job as the manager is to make sure they have the time to learn the things they want, rather than expecting them to learn after hours. While time spent learning takes an engineer away from other projects for a brief while, it is rejuvenating to learn something new and return to a beginners mindset. It makes the team stronger.
Do you ever hire junior developers into your team?
Courtney: Netflix has a unique culture. There is a lot of freedom, and there are not a lot of rules or processes. As a result, my team is made up of engineers with more experience. When I was an Engineering Manager at Apple, my team used to have summer interns who were still in school. One of the best people I hired onto my team at Apple was someone who started as a summer intern.
When interviewing an engineer, what is your favorite question to ask?
Courtney: Ok, this is my deal-breaker question: “If you are at work and have some kind of disagreement, could be over the priority of a bug, or the right design, anything at all, how do you resolve that?” It’s a pretty revealing question. It tells you a lot about collaboration skills. If someone tells me that they take a bulldozer approach to get what they want during a disagreement, that style isn’t going to work on my team. On the other hand, if someone tells me they can put their emotions aside, listen, and think about the other side of the argument, there is a chance that they could thrive on my team. Those are the people I want. Of course I want people who are technically excellent, but if they can’t function and thrive in the Netflix culture and my team’s culture, it’s not going to work out. I look for candidates who are technically excellent, and also have strong collaboration and interpersonal skills. I won’t hire someone unless they excel along both dimensions.
I know you take a lot of pride in your team culture. You’ve mentioned the Netflix Culture page is your compass for how you hire. Are the core values on that page for real?
Courtney: Yeah, they are absolutely real. I see them every day. There is also a focus on improving our culture over time. I think it starts with a desire to keep learning and growing, both as individuals and as a company.Netflix Culture page
Looking back over your own career and your own growth, what advice would you give to a junior developer who is overwhelmed and just not sure if they have what it takes to be a great developer?
Courtney: First, let me say it’s incredibly common. Any time you try something new, you’re going to feel that way. You’re not alone, in fact, most everyone feels that way. The key is what you do with it. Does it paralyze you? Or can you find a way through it? I would recommend finding someone to talk to who you can trust to give you feedback. Imposter syndrome is really about a skewed perspective, where you are seeing yourself through a lens of uncertainty and your perception of your own performance is distorted. If you can find someone who you trust to objectively tell you how you are doing, that is enormously helpful. Then, look for opportunities to celebrate your progress. Yeah, maybe you’re not architecting a whole product the first month on a job but hey, maybe you fixed a bug. That’s progress. Those small things are building blocks that are important. Find solace in the small contributions and incremental progress you are making along the way.
Thank you Courtney, for your words of encouragement and sharing your story. Stay tuned for our next edition in our conversation series, where we will learn from another industry leader and her interesting path.