Engineering the Future of Home Insurance: My Internship at Hippo

Engineering the Future of Home Insurance: My Internship at Hippo

This summer, I had the incredible opportunity to participate in an internship at Hippo Insurance Services as a Software Engineering Intern within the Partner API team. Unlike many internship experiences where interns work on low-risk, isolated projects, I was tasked with an impactful project and treated like a full-time employee. The skills I have gained and the knowledge I am taking away are immeasurable.

Academia vs. Coding in the Real World

Within my academic career, I've only had well-defined, isolated problems. Every test, assignment, and problem sets were provided with all the information necessary to find the solution. In my time at Hippo, this was rarely the case. I realized that although requirements were known (I.e., "acceptance criteria"), it was my responsibility to wade through loads of context in order to investigate complex problems. Through this process, I learned to gather relevant information, analyze possible solutions and deduce the one best suited for the problem.

From "Coder" to Software Developer

Most of my studies at University have focused entirely on learning programming languages and analyzing algorithms. I rarely contemplated abstract solutions to a problem before touching code. Working as a Software Engineering Intern expanded and improved my process by encouraging me to actively think about what I am doing, what I want to create, and how I will make it happen.

My time at Hippo also broadened my understanding of what the job of a Software Developer entails. Aside from writing new code, I was in charge of fixing bugs, design and architecture, testing, and refactoring.

Developing an End-to-End Solution

My primary project during my internship was to design a high-level API that implements business logic to interact with our Data Vendors. To kick things off, I learned to write a formal Tech Design Document, which includes information like the scope of the problem, the analysis of possible solutions, and my recommendation for the best course of action. I attended brainstorms and reviews to gather information and feedback that helped me clarify and iterate on my ideas. I also learned to make data models and sequence diagrams to better explain my solutions.

I also gained experience in Project Management, using the tech design document to break down tasks into manageable Jira tickets and estimate each ticket's story points. These tickets helped me prioritize what needed to be done and kept me from getting overwhelmed at the size of the project.

Coding the actual API brought fun, new challenges. I was working in a language and framework I did not know prior to the start of this internship. It was also my first time working with Git, and it took me a while to get the hang of the pull request (PR) process. In the first few weeks, I regularly failed CircleCi tests for forgetting to update test snapshots and having lint errors. I was very excited to learn there were commands to fix these before pushing the pull requests.

After building the API, the next challenge was figuring out how to test it. I wrote thorough unit and translation tests by mocking services to test the logic of my code. I also used monitoring metrics to track latency and data miss through HTTP responses. While that may sound a bit boring to the laymen, I can assure you that it was all very fascinating to work through and complete on my own.

Once testing concluded and everything worked properly, I integrated this API within a data vendor, which introduced the challenge of navigating legacy code. Because of this situation, I learned to write integration and regression tests. My implementation ended up being so impactful that it resulted in a change in underwriting rules. As a result, I also wrote a migration script to modify existing policies to follow the new rules.

In the final week of my internship, my API integration went into production! My team and I worked late to assist DevOps with any hiccups surrounding the code release. It is exciting to know that something I worked so hard on is being used by customers every day.

Experiencing Growth and Mentorship

At the beginning of my internship, I was paired with a mentor to help me become accustomed to the code base and guide me along the way. My mentor, Edward, was a friendly face right from the start and served as a valuable resource for answering any questions I had. He offered insight into the company and the technologies it used. As well as giving me advice about career development and finding a work-life balance. It was a wonderful experience working with such a talented engineer.

As my internship progressed, I had the opportunity to interact with the other Senior Engineers on the Partner API team. They shared a wealth of technical advice surrounding caching/persistence logic, object-oriented design patterns, and the tradeoffs between synchronous vs. asynchronous flow. By providing me with critical feedback in code and design reviews, this team helped me grow as a developer.

A Thank You

This summer, I saw firsthand the kind of innovative spirit that compelled me to join the tech industry in the first place. I could not have asked for a better internship experience on which to build a foundation for my career. I will forever be thankful for this opportunity and proud to be a part of the Hippo family.

Share

Any questions?
Ask away - we're here to help.
Email us
Hippo

Social Media

Get the App

app QR codeScan me

© 2024 Hippo Enterprises Inc.

Hippo Insurance Services (“Hippo”) is a general agent for affiliated and non-affiliated insurance companies. Hippo is licensed as a property casualty insurance agency in all states in which products are offered. Availability and qualification for coverage, terms, rates, and discounts may vary by jurisdiction. Any estimated premium savings are based on the application of discounts which are subject to availability and qualification. Smart home discounts are subject to additional qualification, conditions, and restrictions. We do not in any way imply that the materials on the site or products are available in jurisdictions in which we are not licensed to do business or that we are soliciting business in any such jurisdiction. Coverage under your insurance policy is subject to the terms and conditions of that policy. Coverage and coverage amounts selected are the decision of the buyer.

Installing and activating the sensor kit will result in your being a customer of a third party that is not affiliated with Hippo. Hippo is not responsible for any acts, errors, or omissions of such third-party or the operation or effectiveness of the sensor kits provided, or any loss or damage of any kind that you may suffer as a result of your installation and use of the sensor kit or engagement with such third party. We encourage you to review the terms of use, privacy notice and any additional notices provided by the third party prior to installing and activating the sensor kit. The terms of your engagement with the third party are solely between you and such third party.