All Posts

Five Lessons from a uShip Software Development Intern

I’m a recent UT Austin Computer Science graduate and this summer marked the end of my development internship at uShip where I’m now a full-time Developer. I started out on the Community, Trust, and Safety (CTS) team, where I learned about the uShip product and business rules.  CTS is an umbrella organization within the company that is comprised of four teams who support uShip members. I then moved onto our Business Development, Marketing and Search Engine Optimization (SEO) team also called “BizMarkEO.”  I now work on our Android application as a full-time developer!

Culture

Not only is uShip an amazing place to work at and learn, it’s also fun!  Every first week of the month we have a “First Friday” event.  These are company-wide events that range from scavenger hunts in downtown Austin to volunteering with local organizations or even floating down the Guadalupe River with the rest of the company.  First Fridays are a great time to meet and hang out with the rest of the employees at the company that you may not get the chance to work with on a daily basis.

Push Code

My first day as an intern at uShip consisted of a brief introduction of everyone at the company before jumping right in to the code base. The simple “Hello World” web forms project introduced me to our deployment process.  By the end of the day it had made its way through the agile process and in to production.  One of the awesome things about working at uShip is the fact that we do continuous deployment.  It’s very rewarding to see the task you have been working on make its way onto production available for others to use.

The War Room

Shortly after I began my internship, I was placed on the Listing States Project, which was an architectural reworking of our shipment statuses focused on improving how we store and track state on our listings.  A team of 6 people set up in a conference room, which we nicknamed the “War Room”, to work on this project for about a month.  This was probably the most educational month I had during my internship.  Everyone in that room was a great resource and they all had strengths in different areas of programming.  While working on that project I learned a variety of things such as how to:

Edit web forms
Create SQL stored procedures
Write unit tests
My tips for Dev interns
1.     Ask questions! It can sometimes be intimidating to ask questions about things you might feel that you should already know but you will soon find that the people you work with are more than willing to help you learn more about your codebase and products.
2.     Know the product. Familiarize yourself with the codebase and with the products early on.  It’s a good idea to make development accounts and run through the product to understand how it functions.  First hand knowledge of the product is indispensable.
3.     Identify key contacts. Know who the best points of reference for specific products are.  We’re always rolling out new products and whether it’s development knowledge or general product insight, it’s a good idea to know who the domain experts are. For example, I was able to use an internal wiki to find key contacts, also known as Subject Matter Experts (SMEs).
4.     Master the tools.  Become familiar with the abilities of the programs and plug-ins you use.
5.     Be a sponge!  The most important part of your internship is to learn the most you can about as many topics as possible.  Whether or not you continue your internship, the knowledge you acquire will help you in the future.

Prioritize to Thrive

Most interns are usually enrolled in school or will be returning to school in the fall.  If you’re enrolled in school while you’re an intern, remember school always comes first. During my year long internship, I had times where I had multiple school projects due in the same week along with multiple tests coming up and sometimes a combination of the two. The company was always accommodating by not only reminding me to put school first, but also letting me take the time off to take care of school related things.  Taking classes and working as an intern taught me new time management skills. I relied on calendar applications and forced myself to stay on track with the schedules I had set up.

An Official Nerd

I’ve had a great time during my uShip internship–from First Fridays to the relaxed yet high-paced work environment.  A high performance software development environment is serious work. My experience at uShip has provided me with a lot of insight, not only about technology but also how to work well with people.  I’ve had a successful internship that evolved into a full-time position by following these guidelines. Regardless of your internship goal, I encourage you to follow these tips as well.

 

From left to right: Ivan Valle, Mitch Stephan, Andrew Solis, Mariel Maldonado (ME), Eric Fennell, Paige Hinkle, Michelle Nickerson, Jake Wilke, Sean Pollock, Bryson Reynolds, Daniel Robertson, and Build Bear.