Codesmith Week One: Calm Before the Storm

Tiffany Lin
4 min readNov 6, 2017

--

It was a little before 9 a.m. this past Monday morning. As I stepped foot into Codesmith, I couldn’t help but feel that life at this moment was pretty surreal. After months of studying, I’d finally made it into Codesmith’s LA-based software engineering residency. Am I really here? What can I expect out of this program? What will this week be like? These thoughts whizzed through my mind as I headed down the hall to meet my cohort mates.

As is expected on the first few days at any school or job, our first day was fairly low key. We introduced ourselves to each other and played icebreakers. We had a lecture on how to be effective pair programming partners and then paired off to work through coding challenges that revolved around JavaScript fundamentals.

The next day was more or less the same. There were lectures on object-oriented programming and problem-solving approaches, and we continued working through our JS fundamentals coding challenges. And since it was Halloween, we were treated to pizza and Halloween activities in the evening. We played trivia, had a toilet paper mummy contest and watched “Scream.”

So far so good … but I sensed that we were all on the tipping point of a roller coaster ride that was inching ever closer to the first drop. Diving into a completely different career path wouldn’t be easy, after all, and I knew that going in. But what I hadn’t prepared for was to feel a dip in my confidence only a day later.

On Wednesday and on, the pace picked up — big time. We were introduced to data structures, recursion and algorithms, and then immediately tasked with solving coding challenges. But wait … I had never heard of linked lists, hash tables or binary search trees before! And recursion? I knew about it but had not had a chance to wrap my head around it.

I needed more time to sit down and fully understand these concepts. But in a program like Codesmith’s, everything’s accelerated. There really isn’t time to fully review the material before having to simply jump in.

And because I was so new to the concepts, I felt that I couldn’t contribute as much during the pair programming challenges—something that the over-achiever in me didn’t know how to process. I also couldn’t help but compare myself to my pair programming partners, who happened to be familiar with the material and seemingly not struggling as much as I was. ­ I felt — quite frankly — lost, slow, stupid, a failure etc., whatever negative emotion I could pile upon myself. I even began worrying whether I was ready to be in this program.

But since this was only week one, I wasn’t ready to give up quite yet. I mulled over concepts with cohort mates and used dry-erase markers to sketch and visualize solutions, which helped. I took ping pong breaks. And I started sharing how I was feeling with a few of our more experienced seniors, who reassured me it was normal to be feeling this way. They even said that this feeling wouldn’t be going away any time soon — joy — but that it will pay off in the end. Why? Well, I would eventually learn how to problem solve despite hitting walls of massive confusion, a powerful skill for any engineer to have.

For me, the main takeaway from this past week is to be honest about how I’m feeling, and to ask myself why. I realized that I only felt like a failure not because I truly am one, but because I was in unfamiliar territory. Of course I wouldn’t be an automatic expert on a topic I hadn’t heard of before, and that’s OK.

As I type this while thinking of the week ahead, I can’t help but wonder how I’ll fare. I’m frankly a bit petrified, but I am also determined to develop thicker skin against my own negative thoughts. If self-doubt is not about to dissipate any time soon during my time at Codesmith, I might as well learn to push through despite it.

How will I do it? Well, that’s TBD. But I will be using our senior students’ experiences as motivation.

--

--