Skip to content

Instantly share code, notes, and snippets.

@pavan-kalyan
Created December 14, 2020 12:44
Show Gist options
  • Save pavan-kalyan/acf449d48b18b4914fe381c76422bad5 to your computer and use it in GitHub Desktop.
Save pavan-kalyan/acf449d48b18b4914fe381c76422bad5 to your computer and use it in GitHub Desktop.

My experience at Hevo

When I think back to the different internships I have had in my short career, None come as close to enjoyment as my internship at Hevo Data. I did not know much about Hevo Data when applying for their internship. The very first time I felt Hevo was a good place for technical growth was actually before I even joined; I had multiple rounds of technical interviews where I got to solve and discuss multiple Data Structures and Algorithm questions, some of which were somewhat rare. The interviewers were more than glad to get into the details and discuss if my solution would work in all cases and what can be done to improve it. I wouldn't say it's particularly very hard, but it definitely was thorough. This was the first time I got an idea about the effort and care taken to vet candidates. It gave me a rough idea of the kind of talent working at the company.

Onboarding, Mentorship, and Growth

< insert picture of me holding hevo gift bag?> At Hevo, any newcomer (intern or FTE) gets paired with a mentor/buddy who will help you get set up and guide you through the initial tasks. I had a great time with my mentor who genuinely cared about my growth. When I had a doubt, he would tell me how to find out the solution rather than what the solution was and this was a far better way of learning and something that will ensure I can figure my way out of most technical issues independently. We also had great discussions of Design patterns and code quality and learned a motto of "Leave the code cleaner than you found it". I also always appreciated his explanations of the underlying engineering decisions of different modules of the codebase. I also had regular 1-1s with my manager and the constant question was whether I enjoyed the work and whether I felt challenged by it. Other questions were about what could be done better. Although getting paired with a mentor/buddy is common in most companies. Here at Hevo, the mentorship extends beyond that.(//Assumption) Because you can get your ideas or designs validated by anyone (usually by people a lot smarter and with a lot more experience). Most of the conversations I have had with different employees as always ended up with me walking away with a new piece of actionable knowledge. For example, When I was working on a feature to automatically map between varchar fields in the source to columns in the warehouse with bigger size limitations like text or mediumtext. An employee asked about how I would handle different collations, I did not even know what collation was(This was not part of my college curriculum!). He took time out of his work to explain how different encodings work with a historical perspective that added context for the reason it exists the way it does. This added context is not too easy to acquire. (This is an accurately titled article explaining all this). Another example would be when we were launching our revamped docs site and I randomly got the chance to talk to the engineer launching it. I learned a good intro on what Jekyll is and the benefits we discussed of using a static site generator. The very same night, I started experimenting with different static site generators and wanted to use them for some purpose and ended up launching and deploying my blog site.

Culture

At Hevo Data, the curious and learning mindset is probably the most immediately recognizable part of the culture here. Employees and interns are encouraged to reach out and ask about the different technologies in use or the different features people are working on. We maintain an ever-growing knowledge base on the different parts of the architecture available for anyone curious. We also had a completely remote Hackathon(dubbed Hevo'thon) where we got to identify an issue and do anything to contribute; this ranged from coding a small tool to using no-code tools to provide actionable insights into a problem. We also have a high-trust culture that avoids blame and focuses on figuring out solutions. On the lighter side of things, we also have a culture where we enjoy having fun; we regularly used to go out as a team for beers and have regular zoom meetings (during lockdown) to relax and have fun.

Product Quality & Ownership

Everyone puts a lot of care into the quality of the product we make. From the design of a feature and code reviews to the documentation for the feature. When it comes to code reviews, other than any mistakes, better abstractions, and best practices are discussed to maintain code quality and ensure high maintainability; At the same time, care is taken to avoid bikeshedding. When designing a feature, many things are considered but the biggest priority is the UX of the feature. i.e How it's used, what value does it provide to the user. We experiment and if it doesn't work out we change till it does. Another part of the culture that is highly visible here is ownership; Employees sometimes fix bugs in the platform even if that is not part of their current task or make suggestions on the UX of the product or take time to help out members working on other features. This ends up improving the product quality a lot and inculcates a habit of caring about the product in team members.

Work

I have interned in places before where although my work was fun, it never ended up seeing the light of the day as it was usually a POC. This was a stark contrast to my work at Hevo, where the feature I worked on now would be deployed in as soon as a day (or few weeks) and in the hands of a user. Within the first month of my internship, I started work on bigger features that would directly be used by customers and add significant value to the product. I remember when I worked on Google Search Console as a connector, I would regularly refresh a query to find out if any user has started using it and would monitor it for any issues. Watching my connector work almost flawlessly was a big boost to my confidence and motivated me to do better. After I converted to an FTE, I was also included in the OnCall roster. where I would spend a week fixing bugs and taking care of any issues that happen in production. This was an interesting and challenging experience as it required solving the problem quickly so customers don't get impacted heavily, although it can get very hectic sometimes other employees are always there to help out when it's needed. When the time came for me to weigh my career options, due to the reasons mentioned above, I decided to continue with Hevo.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment