Skip Navigation
Trulia Logo

Trulia Blog

New Codebases, Languages and Everything Else Trulia Engineering Interns Learn

Lessons learned from intern turned associate software engineer

When I packed my bags and prepared to move to San Francisco for my summer internship at Trulia, I was filled with uncertainty. This was my first engineering internship; would my technical skills be good enough? Would I make friends? Would I learn any new skills? Would I get lost in the office? I felt like a little kid going to a new school. However, I can now say with full confidence that my internship was one of the most educational – and enjoyable – experiences of my life. For those entering their last year of schooling and starting to look for an internship, here are some lessons I learned, and some things you should keep in mind as you’re starting to apply for those coveted internships:

You don’t know what you don’t know (and that’s OK)
I was a good student in college, but interning at Trulia made me realize that there was a lot I didn’t know. I hadn’t done any Web development in college, nor had I worked with a codebase anywhere near the size of Trulia’s. My first task as an intern was relatively simple: make an existing banner on the website responsive. While this assignment might seem trivial, in order to even understand the code I was working with, I had to learn some JavaScript, HTML, CSS, Backbone and React. It was a great opportunity, but daunting at first. I had a little reality check and quickly realized that instead of being afraid of opportunity, you need to embrace it. Instead of seeing challenges as a symbol of my lack of knowledge and getting down on myself, I stayed positive and motivated, and accepted that it was OK to ask my supervisor and teammates questions. That mind shift was the best thing I did; it helped me grow tremendously.

In the end, React was what I ended up working with the most during my internship, and I was pleasantly surprised by how much I enjoyed it. It was especially exciting to work with this language since it is such an up-and-coming and relevant library. I encourage everyone jump on any opportunity they’re given in their internship, and don’t hold back.

Learn as much as you can about all aspects of the company
At Trulia, there are many opportunities for all interns to learn about all departments, and I encourage everyone take advantage of them. These opportunities will give you a completely new understanding of a how corporation works. About once or twice a week, interns at Trulia were invited to informal “fireside chats” with leaders of the company. We were able to speak with the company president, CEO, head of product and the VPs of engineering (among many others). We heard about their career paths, the future of tech, what it’s like to start/lead a company, the podcasts they listen to on the way to work, and so much more. This information was priceless and I would go back to my desk after these meetings feeling super inspired.

Keep the big picture in mind
In college, I had a very familiar routine: learn something in a lecture, then translate that lesson into a small piece of code (maybe an average of two or three short files). If I got stuck, I would look at my lecture notes or use every CS student’s bible: Stack Overflow. This routine didn’t work so well for my internship though. It soon became clear to me that Trulia’s codebase was so large there was no way I was going to understand every function. Furthermore, Stack Overflow has its limitations. For example, if I had to fix a problem with a button on Trulia’s homepage, I sadly could not Stack Overflow my questions about what happens when you click a Trulia specific button (hint: a lot is happening). I found that what helped me the most was to always take a step back and think about the bigger picture – ask yourself, “What is the general format of the code?”, “What are the major files and functions of the codebase?”, “How are the different files connected together?”

I really started to adopt this thinking throughout my internship by being able to attending different meetings and hear how all the pieces of the puzzle fit together. If I went to a design meeting, I was able to understand why a certain feature was being designed a specific way, which in turn might impact how I do something on my end. Additionally, if I went to a team meeting about how to engineer a new feature, I was able to start immediately thinking about how the new feature would fit into the codebase.

Looking at things top-down really helped me start to better understand how the whole system works, and I would encourage any intern to attend as many meetings as possible. Take the opportunity to learn how all the pieces fit together, and how you can benefit from it.

Take time to reflect
You’ve probably heard before that an internship is the best way to test out a career, and it’s the truth! When you’re in the midst of your internship, my recommendation is to think a lot about whether you’re learning enough. I knew Trulia was a good place for me when I noticed I really enjoyed working on personal projects at home using the skills I’d learned during my internship. It showed me just how much I learned over my short few weeks as a Trulia intern. Also, consider whether or not you’re excited to go to work, and if you are being challenged. I was lucky to find just what I wanted at Trulia, and am super excited to be returning full-time this fall.

If you have any questions on interning at Trulia or want to learn more, drop me a comment below.