This post was originally written for Veritas internal communications.
Whenever people ask me questions about my internship – “How’s it going?”, “Are you learning new stuff?” – I always reply with the same answer. In just about everything I’ve accomplished, I’ve also had to learn something along the way. I can remember my manager Dennis Vaughn describing my project to me. He told me: “Yeah, and you’ll probably want to wrap this up in a simple UI”, making it sound almost routine. But for me, the extent of my software development experience had been following project specs in school. Creating a “simple UI” was something I had never done before and something I really didn’t have any idea of how to do, but it was also something new and exciting to learn. And learn I did. I wrote a front-end client with the help of the VDL Design Language (thanks to those guys for making it so much easier for me!). I wrote a back-end in Python with Flask and Celery, wrapped in a REST API. But looking back, some of the most valuable things I learned weren’t about any hot new framework, or specific technologies, but rather about learning itself.
Near the beginning of my internship, I would often try to be too independent, and just figure things out for myself. After all, the information is usually all there online somewhere. It might be hidden deep in some unrelated stack overflow question, but it’s definitely there. And while this isn’t wrong, it’s also not the best way to work. One anecdote my co-worker Divesh Tejnani told me really stuck out. He told me how in his internship, he used to always try to figure things out by himself as well, thinking that’s what good employees do. But when he started to go out of his way more to ask for help, he noticed something. His manager was a lot happier with his increased productivity than he had been with his independent style of working. And when I started to change my style of working, I noticed the same thing. Everyone always hears about how you should always ask questions, how everyone is there to help you, but I never really realized the importance of the whole idea until I actually put it into practice.
Another thing I started to do that made a big difference was something simple: I listened, and tried to be aware of the things happening around me. My project is quite independent – I am working on it by myself, and while it is related to the work my team is doing, it’s able to be developed almost completely independently. I found it was quite easy to get complacent, and not pay attention to the rest of my team’s work. After all, I didn’t need to understand any of it anyways. During one of my early one-on-ones with my manager, he told me how valuable it can be to just listen. Often, he said, he wouldn’t have any actual experience with something, but just being familiar with things could be extremely valuable. The way he accomplished this was by just listening. Although things you hear in meetings or co-workers talking might not make any sense right then, hearing about a similar topic can spark the memory later. Even if you don’t remember the exact information, at least you might know who to ask.
For me, I remember people always talking about microservices and horizontal scalability. I wasn’t really making my own microservice, or large architecture that involved them, but I still applied the idea to my own application, designing my application in such a way that was extremely scalable. I would never have even thought to do it this way without always hearing about microservices, and containers, and how important they all are. There are so many other things, like Janus, Cassandra, or Jenkins, that although I never may have used extensively, I am familiar enough that if I ever ran into a use-case ideal for the technology, I would have a good idea of what to use.
As I near the end of my internship at Veritas, I realize how valuable all these skills are. Although I’m very pleased with the application I have built, I realize the more important result is the personal growth I have experienced, developing skills that will last me much longer than any knowledge about the specific tools or technologies I used.