Technical Internship Reflections
Over the past few weeks, I got to try out pair programming with one of Cape Town’s great front-end developers and now a dear friend, Zeeshaan Maudarbocus. I’m so thankful that Open Up provided a space where I felt free and comfortable to explore front-end development.
How I got to Open Up:
For a little background, I am going into my third year of university at UNC-Chapel Hill. Around November of last year, I applied to spend my summer in South Africa with a program called VACorps. I was taking my first coding class at the time and wanted to apply for a computer science internship to see if it was something I was really interested in and gain some real-world experience. When VACorps placed me with an internship at Open Up, it was almost impossible to foresee just how perfect that placement was for me.
The last week before I left to spend my summer in South Africa, I started really doubting that I was good enough to be a computer science intern. I consider myself still very new to computer science because I have only taken three coding classes. I was supposed to be a front-end development intern and I quite literally knew nothing about front-end. I was also nervous that I would discover I didn’t actually enjoy coding, or worse, that I wasn’t any good at it. I took all of these thoughts and doubts with me to Open Up, but now two months later I am excited to say I have successfully completed my first technical internship.
My first impressions:
On my first day at Open Up, I was introduced to all of the wonderful people I would get to spend two months learning from. I won’t lie, I was quite intimidated when I started working in a room with only male developers, but this proved to be one of the biggest blessings about working at Open Up as I have always believed that pushing oneself out of one’s comfort zone is the best way to see personal growth and gain new skills.
The diversity at Open Up is something I think every company should strive for. Working with people from all different parts of South Africa and a few different countries really added value to the work we were doing. Everyone at Open Up has their own motivation to see technology positively change society and it’s been a pleasure to hear everyone’s different passions come alive as I’ve gotten closer with different team members.
The culture at Open Up encourages everyone to talk freely about their identities and use their different experiences to bring diverse ideas to the team. Through this, I learned so much about South Africa, about my fellow Openers, and about how my own unique experiences can add value to the workplace.
The project:
I got to try out pair programming by working with Zeeshaan Maudarbocus on the business portal project. I was excited to be pushed, challenged, and to see what I could do.
For reference, pair programming is an agile concept that is loved by some developers and hated by others. I see the biggest advantage of pair programming to be easy on-boarding. With my little knowledge of front-end development, I could have never been caught up to speed on the project without watching Zeeshaan and observing his techniques.
During the first week of pair programming, I got to sit with Zeeshaan and watch him do his thing. This gave me a little glimpse at how a front-end developers brain works and I tried to just soak in everything I saw. All I could really contribute to the project the first week was a shout when I saw something like a missing semicolon, but sitting with Zeeshaan gave me a great crash course in front-end development as this was my first time using CSS, Javascript, and HTML.
One day, when we had a free moment while waiting for a code review, Zeeshaan wanted me to try cracking the classic coding puzzle called “Fizzbuzz.” This was essentially the first time I had ever been asked to code outside of a class, and even though it was a beginners puzzle, I was so nervous I wouldn’t be able to do it. It’s silly how little I believed in myself. With some help from Lunga and Zeeshaan, I figured it out and gained some confidence along the way.
The next week, when Zeeshaan first told me I was getting a piece of the project to work on my own, I was a bit overwhelmed and nervous, but I knew it was the perfect chance to see what I could do.
I spent a couple of days figuring out how to add a modal feature to the search results page. With lots of googling and help from Zeeshaan, I got it successfully working and moved on to adding sharing features to the page. Once this was completed, I added other features like icons and a link to the homepage.
Each time I completed another part of the project I felt so accomplished and just wanted to keep going.
The exposure to front-end development showed me the more creative and design-oriented side of programming, and I discovered that front-end is really fun and exciting. I think for any new developers like myself, shadowing a more senior developer is a great way to get comfortable with coding in a work environment and it’s great for getting familiar with new languages and software.
Reflections:
I want to give a special shout out to JD, a great senior developer who was always approachable and was always patient with getting me up to speed on the tasks. Some of my favorite moments were when I would start up the software wrong or the server stopped responding and JD would gently respond with, “Welcome to the world of programming.” I’m so thankful JD trusted me with a real project and was willing to help me without judgment.
I think working with Zeeshaan was the best part of the whole pair-programming experience. I’m so thankful that he was willing to let me program with him as I’m sure helping me took time away from other tasks he had. He never discouraged me for how little I knew about front-end development, and better yet, he was always there for a high five when I got any little part working.
I will forever be grateful for a great first mentor. He taught me to not be too hard on myself, he encouraged me to reach for my big crazy dreams, and he inspired me to work hard to be the best coder I can be.
To future technical interns at Open Up, I would say to observe all you can, don’t be afraid to ask questions, and spend time trying to apply the things you learn. I spent a lot of time practicing my troubleshooting skills and trying to develop my skills on my own so that I could add value to the project.
I will keep the lessons I learned during my first pair-programming experience with me while I go back to school and keep pursuing my computer science degree. I feel rejuvenated with a fresh passion for coding, and I’m excited to explore more civic tech avenues back home in the States.