June 29, 20210 mins read
I used to admire how programmers in TV shows or movies could just draw some diagrams, type some code into a computer, and then make an amazing application appear. As a freelance violinist, I had dreamed to have this sort of ability, but it didn’t seem possible in reality. When the pandemic struck, seeing that there wouldn’t be much work happening in my field for a foreseeable period, I took the plunge to join a coding bootcamp to explore this dream.
After the bootcamp, I discovered that I do enjoy writing code and that I wanted to pursue a career doing this. However, after a few months of failed applications and interviews with the feedback of “lacking in technical experience,” I felt quite disheartened. It was like the universe had sensed my frustration, because three months into my job hunt, coincidentally I found a post in Codebar by Aron Carroll (Senior Engineering Manager here at Snyk) about the first Snyk Software Engineer Internship Programme. Despite it being 11pm in the evening, I opened the laptop and within seconds found the video How Would You Explain Snyk. I was so impressed with how openly and creatively the company was explaining its mission in this video, and how happy everyone seemed. Without much hesitation, I quickly applied for the internship.
The internship is a three month programme. Coming into this internship, I was placed in Team Runtime in Snyk Container, working with two senior engineers and one engineering manager. On one hand, I was super excited to have this amazing opportunity to learn with three great engineers. On the other hand, I was also very nervous about working with people so advanced and I didn’t want to make a fool of myself. In the music business, even one mistake is all it takes to ruin your reputation, and I really did not want that to happen in the internship.
Now that the internship has finished, looking back at my initial worries before the internship, it seemed so trivial and silly. Upon reflecting on my internship, here are some things I have learned at Snyk:
1. Love a challenge
I was initially quite overwhelmed by realizing how much work it would take to achieve this task. However, after the initial shock, I realized that the harder the task, the more I would be able to learn, and that is exactly what my team thought too. They also had assured me that they would be there to help me whenever I needed it. As a result, I am now more than half way through the project, and I have demoed it twice in front of the company.
2. Ask as many questions as possible and over-communicate
Partly due to the pandemic and partly due to the nature of how an international company like Snyk operates, my internship was conducted remotely over Zoom and Slack. My team includes members from Tel Aviv, Cambridge and London, hence it was part of the team culture to use the team Slack channel as our virtual office space to update each other for visibility. I was provided an onboarding buddy, Ivan Stanev, whom I message and have Zoom meetings with frequently (sometimes on a daily basis) with questions. As I got to know the team better, I was encouraged to post my questions in the team Slack channel.
This has accelerated my learning so much more — not only because I can get different opinions and help quickly when I am stuck, but because sometimes it also initiates a good discussion. Nowadays, sometimes I would even message engineers from other teams to ask for advice and feedback.
3. Everyone is equal, be transparent
I remember one of my most uncomfortable moments during my internship was my first Tech Roadmap meeting. As I was listening and trying desperately to understand all of the technical jargon and concepts, the architect of the department Amir Moualem suddenly asked me if I had any opinion on the matter. At the time, I was very self-conscious about sounding stupid. But I gathered myself to tell him my thoughts on what I could understand and what I couldn’t. Afterwards, he expressed that everyone’s opinion is important, and fresh opinion is even more valuable. It is also very important for my own learning to always voice the question when it arises, so it can be answered. Since then, I discovered that I paid much more attention to everything as I knew that my opinion mattered too.
4. “Caring deeply" extends beyond the work you do
As an intern, I did care about making the right impression. As a result, I used to try finishing my work in the evening and be very cautious about asking questions. However at Snyk, I didn’t get talked to for making mistakes, but for worrying about asking too many questions or for working too hard. I once opened a pull request in the evening for it to be reviewed the next morning. The next day, I was advised by my team not to work so late in the evening and was given a talk about having to prioritize my wellbeing in order not to burn out.
5. One team
Apart from the bottomless support I had from Team Runtime, quite often there were other forms of extra support I would receive. Three weeks into my internship, the UK sales manager Alex Gibbons got in touch. At the beginning, I thought this would be just a one off formality meeting about getting to know your colleague. However, this became our monthly meeting where I could talk through my experience so far, ask questions outside the scope of my team, and most importantly, for him to pass on his wisdom about the company and life in general.
There is so much more that I can write about what I have learned from my internship at Snyk, but it has the potential to turn this blog into a novel. I feel extremely grateful to have had this amazing internship opportunity to learn, and am also very thrilled to have been offered a position as Associate Software Engineer to continue developing in this amazing environment. I am proud to call myself a Snyker and I hope that what I share here will encourage others to take an interest in Snyk, and to come join this amazing family.
Feeling inspired? We’re hiring! Explore all of our Engineering job openings.