HubSpot.Extend() 2022 CMS Panel Recap
During the HubSpot.Extend() 2022 Conference, our conference built for developers, we held a panel discussion around CMS Hub. Unfortunately, we were unable to add the recording for this session to our HubSpot.Extend() 2022 YouTube Playlist alongside our other segments. In lieu of this, we have compiled the following recap of what was discussed during that AMA.
About the panelists
The 2022 HubSpot Extend() CMS AMA panel was hosted by AJ LaPorte, Sr. Developer Advocate at HubSpot, and featured the following panelists:
Melinda Green, Web Developer at Fahlgren Mortine
Melinda is the HubSpot SME at Fahlgren Mortine in Columbus, Ohio. She’s been a front-end developer with the agency for more than 10 years. She’s also a professional writer, and a former professional musician, horse trainer, and educator.
Erin Wiggers, Director of Development at Impulse Creative
Erin is the Director of Development at Impulse Creative based in Montrose, Colorado. She is a completely self-taught developer who took the long way to landing on development as a full-time gig around 10 years ago. She has been HubSpot-obsessed for the past six years, and when she’s not being a code nerd she enjoys hanging out with her dogs, camping in her van, and playing music.
Mark Ryba, Founder of Ryba Digital
Mark Ryba is a developer-turned-Solutions-Partner, headless and serverless technologies advocate, and mediocre online darts player.
A recap of the AMA discussion
During the AMA, panelists were asked a series of questions about website development. Below, you’ll find those questions, followed by the answers that each panelist provided.
Question: How do you plan for scale when building out a website?
The first step is knowing your client. Scaling can go in many different directions, and planning for everything is impossible. Know your technical limits and narrow down your options before approaching the technical aspects of the project.
- Melinda Green
When building for scale on HubSpot, or any platform, leverage CDNs, caching, and other features that benefit User Experience (UX) while also knowing your technical usage limits (users, objects, functions). If you hit limits, leverage AJAX or other client-side processing to keep pages light and responsive on load, then download more data in the background. You can be a developer and not a systems engineer and that’s OK. I prefer to leverage hosted platforms because they remove that layer of complexity from my work. Also, make sure to be a good steward. Build your sites and codebase so that others can use it in the future, and make sure to provide documentation and standards.
- Mark Ryba
The first thing I want to know is who will be in charge of scaling for the client’s side of things. I look at it as, “It’s going to be someone’s job to maintain and update this. How can I adapt the build to make their job seem less daunting for someone non-technical, or more flexible for someone who is savvier?” In my experience, anything over their heads is going to become a bottleneck and land back in your inbox eventually.
The next thing to figure out is the end-user experience. I need to have an understanding of what kind of person is going to be using the site most frequently and how the website can provide value to them. Once I know what’s driving them a little more, I can start thinking about the most important conversion paths and how those are going to play into scale.
With those two things in mind, I then start to map everything out on a whiteboard so I can see everything in one place. I don’t know why that’s my process, but I truly can’t function without some kind of visual aide. I’ve also found that it’s helpful to start the documentation here. Write down in black and white what exactly you’re trying to accomplish and how you plan to do it as kind of a North Star for later in the project.
- Erin Wiggers
Question: How do you plan for multiple integrations into a website?
Similar to the creative design process, take a solutions design approach and figure out what is required (and for who) along with what tools you have available. Get a little cross-functional/empathetic. Understand the roles of the users you are building for. Know how the marketing tools in HubSpot work in addition to the development tools. Learn platforms outside of HubSpot, especially JAMstack [JavaScript, APIs, Markup], Gatsby, and Next sites, or other platforms that depend on consuming and processing decentralized data from multiple sources. Again, know your limits and the best ways to access the data you need. Does all the data have to come through on pageload directly from external sources, or can some be cached in a HubDB or flat file? How will you handle authentication and security? How will your site respond if one of the services you’re depending on goes down or changes their API?
- Mark Ryba
I’m going to be a little more literal here and go back to the whiteboard/seeing it all at once concept. My step one for integrations is to visually show four things:
- The data that I need
- Where it currently lives
- Where it needs to go
- What it will do when it gets there
I then start to draw arrows. In my mind, every arrow is a piece of the integration, so for each one I need to figure out:
- How do these two data-stores talk to each other?
- Is there an API?
- Can we use webhooks?
- What kind of authentication will be required?
Once I have this mapped out, I can start to see patterns and overlap and find efficiencies that I really don’t think are possible to find when it’s all just concepts in the brain—at least not my brain.
- Erin Wiggers
I agree with Mark and Erin, there are definitely Jobs to be Done. This is where the sandboxes become invaluable, to pressure-test integrations without interference and determine the risk and efficiencies for implementation.
- Melinda Green
Question: HubDB vs Custom Objects—what's your imaginary line in the sand of using one vs the other?
If the data primarily needs to be displayed, go with HubDB. If it needs to be automated in some way, go with a Custom Object. If you are using locations, HubDB has a specific column for that, so that is definitely a consideration for me. Generally, I think, if you have a ton of content that needs to be related to itself that [use case] fits more into HubDB and child tables and whatnot. If it needs to relate to your CRM, like to Contacts or Companies, for example, then a Custom Object is probably the better choice.
- Erin Wiggers
Is the data set you are working with presentational or dynamic? HubDB, being semi-relational, is better for presentational data, such as basic tasks. Custom Objects allow for associations, dynamic usage, and interactivity with the CRM.
- Melinda Green
Consideration number one is the client’s account package. Obviously, if they are not on enterprise, then HubDB just has to work. I agree with Melinda on associations for objects being the main benefit. If the data should be user-specific, it should probably be an object. Again, I am the “limits” guy—HubDB’s 10,000 row limit can be limiting, depending on the use case. Honestly, the content editing experience for both of these tools can leave a bit to be desired, especially for teams coming from other platforms. Sometimes, the best data-store solution is something external from HubSpot. I’ve had good luck in the past using AirTable, for example. Obviously, these don’t have the dynamic page functionality that the HubSpot tools have, but for SPA-like experiences this can be a good fit.
- Mark Ryba
Question: What are your best sources for inspiration and education as a HubSpot developer?
The basics, Developer Blog, and monthly podcasts. I’d also recommend HubSpot’s Academy lessons and certifications. [I also take] inspiration and learnings from my client’s needs and growth.
- Melinda Green
This conference, for starters. But, really, INBOUND and other conferences give me a ton of creative energy. Also, if you are not subscribed to Dharmesh’s YouTube channel, you’re missing out. There is also the Developer Slack, Developer Blog, and Community. Outside of HubSpot, CSS Tricks, Kevin Powell, Gatsby, Next.JS, Netlify, FireShip, FreeCodeCamp (more their content than actual certifications/courses), and the Agency Unfiltered podcast.
- Mark Ryba
By far, hands down, it has been learning on the fly to meet clients’ challenges. I wish I could say that I’m super plugged into the blogs and whatnot, and I do reference them a ton! But the catalytic factor is usually that I have a client with a problem that I am trying to solve.
- Erin Wiggers
Question: What advice would you give to people looking to grow their career as a HubSpot developer?
Know that your career can grow (very well, based on my experience) within the HubSpot platform. I’ve seen many talented devs hop from ecosystem to ecosystem for various reasons, but if you enjoy working on HubSpot, I think it’s safe and advantageous to make it your niche. It’s not going anywhere.
Get a taste for different roles in the ecosystem and figure out what feels best for you. The general paths I see developers take as their careers mature are:
- Manager: Increase your value by using your dev experience to oversee other devs. Usually the most obvious path, great if you have leadership ambitions and can work with others, but you will be splitting your time between leadership tasks and actual code.
- Specialized Developer: Increase your value based on a specific skill, like React or Vue on HubSpot, pagespeed optimization, even shudder advanced email design. You stay almost 100% involved with development, but there can be a ceiling.
- Solutions Architect: Increase your value by becoming more cross-functional. Great for those with a solid understanding of data modeling or systems design who don’t want to be coding all day, every day. Requires some presentation and communication skills, but is very valuable right now and is a skill that is somewhat technology-agnostic.
- Freelancer/Partner - HubSpot’s partner ecosystem is always growing and always needs more technical experts. This is certainly a risky path, but if you’ve had ambitions of owning your own business and have HubSpot experience, it’s a great place to start.
- Mark Ryba
Be willing to go back to square one on some things. HubSpot has some quirks—not bad ones, just things to consider that other platforms don’t [have] and that can be frustrating at first. Planning for those differences might change the way you approach projects, so don’t be so locked into whatever you learned at the latest JS Bootcamp that you aren’t giving HubL its due.
Learn HubL. Deeply learn it. Know how to write a loop within a loop within a caller within a macro on a dynamic template for a row in a child table that relates the data to the CRM contact on the page. Does that sound completely insane? Then keep studying HubL.
- Erin Wiggers
Educate yourself “out of the box.” Learn about HubSpot beyond the obvious developer aspects and dedicate some time each day, or most days, to looking through the Developer Slack and making connections.
- Melinda Green
View more from the HubSpot.Extend() 2022 Conference
To view more about the other events that happened at Extend() 2022, make sure to read our HubSpot.Extend() 2022 recap and check out all the sessions from our HubSpot.Extend() conference on our HubSpot Developers YouTube Channel.