Tuning G1GC For Your HBase Cluster

HBase is the big data store of choice for engineering at HubSpot. It’s a complicated data store with a multitude of levers and knobs that can be adjusted to tune performance. We’ve put a lot of effort into optimizing the performance and stability of our HBase clusters, and recently discovered that suboptimal G1GC tuning was playing a big part in issues we were seeing, especially with stability.

Read More ››

G1GC Fundamentals: Lessons from Taming Garbage Collection

HubSpot engineering is a Java shop invested heavily in microservices and continuous deployment. Java is not only used to run our thousands of deployables, but also our queues (Kafka) and Big Data solution (HBase). Keeping all these JVMs performant while providing a good user experience has forced us to dig deep into Garbage Collection (GC), particularly the Garbage First Garbage Collector (G1GC).

Read More ››

Becoming a Tech Lead: How I've Balanced Coding with Coaching

In an engineering organization with many small teams, it’s important to develop technical leaders who can be both successful engineers and effective mentors. Depending on the company, team, or person, there’s a lot of variation in what that looks like in practice. At HubSpot, our definition of a tech lead (TL) clearly states: They should spend most of their time on the product, not on people.

Read More ››

Modern Java at HubSpot

HubSpot’s core technology stack has been through a lot of change and iteration. What started as a simple content system based off a C# framework has evolved into a broad application platform. Today, our tech stack is made up of hundreds of services and dozens of full-fledged products. We’ve experimented with a lot of languages and frameworks along the way: We’ve built services in Go, Scala, node.js, and Ruby, and launched major product initiatives in Python and Java.

Read More ››

Engineering Success: How Five Companies Onboard New Developers

Companies invest a lot of calories into recruiting and hiring engineers. We obsess over helpful prep information, interview questions, and timely follow-up emails. Creating a great experience shouldn’t stop once someone's accepted an offer, though. The time right before a new hire starts and their first few weeks are just as important, if not more, in shaping how engaged and happy they’re going to be on your team.

Read More ››

Making Security Usable at HubSpot

Security and usability have been at odds with each other since the dawn of time. We usually associate trusted software with clunky interfaces, not an intuitive user experience. This disparity has inspired many people to find clever (and not so clever) ways to work around common security measures. Some of the biggest information security breaches in the last year have been attributed, in large part, to this. We've been working hard to improve both security and usability internally at HubSpot. While we haven't found a perfect balance between the two, understanding their co-dependencies has helped us make our system safer and more user friendly.

Read More ››