Last fall, I told my boss that I was leaving my job to enroll in a software engineering bootcamp. Programming bootcamps are accelerated programs that take people from all walks of life who want to learn to code, and turn them into junior developers within a few months.
Though I had been working in tech and surrounded by software engineers ever since I’d graduated from college, programming was unlike any job I’d ever had. Until this point, my role as chief of staff at LearnVest was focused on interacting with a variety of people across the organization. When I shared my bootcamp plans, I received almost unanimous support (“Coding is the future!” “This will benefit you in every job you’ll ever have in tech!”). But almost everyone raised flags about whether I would truly enjoy the work. They feared it would be too isolating. That I would be glued to my computer with little-to-no interaction with my team. That I wouldn’t get to utilize what I had long considered my strengths: empathy and communication.
Fears set aside, I enrolled in Flatiron School’s program in November 2016. From the get-go, I knew it would be hard–that shoving all of this knowledge into my brain within a three-month span would be grueling, and that I would be exhausted. But I wanted to feel this way. I wanted the challenge.
one of my teammates said he knew immediately when my eyes went blank and all intake of knowledge was impossible…
I had always been able to accomplish whatever I set my mind to, as long as I was putting in the work and studying. But here, no matter what I did or how much I worked, I felt that I was only grasping 10% of what was being thrown my way. Even with all of the warnings and stories about how not to fall victim to imposter syndrome, I was convinced that I was accepted into the Flatiron program by accident and that I would somehow be the one person who didn’t graduate. Needless to say, it was a long few months.
Through a series of extremely fortunate events, and what I consider to be one of the luckiest parts of my journey into code thus far, I was able to return to my employer as a front-end developer upon my graduation from Flatiron. Not only was I able to come back to the company where I had already worked for three years–a place where I felt extremely comfortable–but I would be working on a product I felt strongly about: financial planning. It was exciting to be placed on the team at the center of this work.
All of this is learnable
I was thankful to have such an amazing opportunity, but also petrified that I would somehow be seen as a fraud. On my first day back, after some exciting greetings and reunions with my former colleagues, I was introduced to my new boss and team. Everyone was extremely kind, but based on my earlier notions of how developers work and interact as a team, I didn’t expect them to help me or sympathize with my situation. I kept my fears to myself.
Right away they started to walk me through our codebase and current projects. During that first week, I didn’t do much in the way of actual coding, but was focused on getting familiar with it and trying to understand our release cycles, how to deploy, etc. Coming from a bootcamp, understanding how the small pieces of code come together in a large application completely eluded me. Despite my confusion, I nodded along in silent agreement.
Before the end of that first week, I was given my very first task. Though I thought I had fooled them all into thinking I was following along perfectly during their code reviews, my team was more astute than I realized. In fact, one of my teammates said he knew immediately when my eyes went blank and all intake of knowledge was impossible. He quickly caught on and made a point to pull me aside after one of those first few meetings. “All of this is learnable,” he said.
This was just the beginning of me learning to seek help and support. Over these past 7 months, I am proud to say that I’ve been able to handle my own tasks each sprint and slowly make progress on feeling comfortable with our codebase. There was a time when I didn’t believe this would happen, and that my team would banish me to not touching anything and merely sit on the sidelines.
Learning never stops
I have been told this one million times, but it is only now starting to sink in that as a programmer I should be constantly learning. In fact, the next thing I need to work on is pushing myself beyond simply handling my assigned tickets each sprint, and practice failing on a bigger project in order to really challenge myself. So instead of shying away from this, I am forcing myself to attack this challenge head on, to accept what I don’t understand and to try to learn as much as possible. And if that isn’t enough, what I’ve come to realize as being the most critical part of my learning–and also the most unexpected–is that I have my team.
I’ve been fortunate enough to be surrounded by developers that want me to fail and struggle on my own as part of the learning process, but who also want to support me and help me problem solve when I don’t know where to start. Each of my teammates has had to deal with my relentless apologies for not knowing what I’m doing and my continuous self-deprecation, but they do this without making me feel dejected or that I can’t do the work on my own. And instead of then presuming I’ll need more help for the next task, they have faith in me that I’ll be fine.
So, now having code in production truly feels like an accomplishment.
During these past few months, not only have I witnessed the support of my team as the receiver of their help and guidance, but I’ve seen the way my teammates help each other. They compare ideas, run code by each other, and push the boundaries of the way they think to come to a better solution, together. However you slice it, these are the signs of real teamwork.
It has taken almost a year for this “not knowing” to not seem so scary. Even after a day of feeling completely useless, I am empowered to come back the next day. In fact, the days where nothing seems to be working–when I’m allowed to just sit with the problem–are some of my favorite days. Of course, it is also extremely rewarding when even the smallest thing does work and I feel like a genius, if even for that one moment. I’m slowly accepting that it’s okay to not know something, but that, if broken into digestible pieces, and sometimes with a little help from my awesome teammates, this is all learnable.