Episode 4: Be Customer OBSESSED

Episode 4: Be Customer OBSESSED

Yes, I know, this is another blatantly obvious thing that we all know we should do when building software at scale, right? Yes, this is Top 3 on any number of corporations’ Leadership Principles (AWS anyone). We all listen to our customers intently when we talk to them, right? Some of us sat in their very same chairs so we know what they want, right? We have a great communication channel, and they know where to find me if they need anything, right? I’m doing a great job communicating my customers’ and potential customers’ questions, needs, issues, and concerns back to the Product team, right?

The truth is - We don’t know shit…but our customers do.

I sincerely hope the above statement (that you don’t know shit) is blatantly false - I hope you know SOMETHING about the industry you are developing software in and catch that the statement above is a bit hyperbole to drive the point. Regardless of the degree to which you are indeed full of shit, I firmly believe this is how we should approach building software at scale in today’s environment. Just about anything we want to sell as an ISV (independent software vendor), from a simple form to an Instagram filter can greatly benefit from this approach. You may think you are doing right by your customers and your company (business owner concept), but I strongly urge us all, especially after covid and the years of socialization we lost, to really rethink what it means to be OBSESSED with our customer in capital letters. It is far more important now than ever.? I also think it’s a pretty good way to stay curious about the world around you and can be useful for building relationships in both your professional and personal life.

Stating the Obvious

Your customers and potential customers have the exact thing you likely need - dollars to drive revenue to ultimately drive profit and/or growth to then in turn support more revenue. It’s a virtuous circle, therefore something we want to magnify and leverage as a Strength and Opportunity. What they want in return is business value, or at a minimum, the perception of future business value in order to part ways with their dollars. Once we have an agreement to exchange dollars for business value, it’s in everyone’s best interest to find the shortest path we can take to achieve the business value with the quality we desire. If we can find the shortest path with the quality we desire, the client wins as they get their needs met sooner assuming we aren’t working on extraneous functionality and the business and its employees win as we save dollars by not working on speculative items or run the risk of gold-plating. You may have another sort of scheme you’ve concocted to at least break even or make money with your business, but this is the general idea behind most long term plays - deliver the intended business value with all the quality attributes we desire with the least spend possible while obviously not killing our staff to get it done (or rewarding them on the backend for their efforts if it’s extraordinary).

Existing Revenue is Easier

When you are building software at scale, it’s critically important to get to as much revenue as you can in the shortest amount of time possible so you can cover the monthly capitalization that your P&L is going to incur once this piece of your software is delivered to clients. Some of this gets into GAAP rules I won’t dive into with this post, but the concept is similar to a credit card you keep charging costs to, then cut up and pay off monthly over the next 5 years. Ideally when you have to start paying down that credit card after you cut it up (your software is delivered to clients), you have the revenue to cover it. Again, you should feel immense pressure to get to revenue ASAP and with as little spend as possible and of course with quality and “table stakes” features that any analogous products in the industry have. It truly is the three legged stool of resources, time, and scope.

As you feel that intense pressure to go out there and build the next widget that’s going to land you $800k in revenue, don’t you dare abandon your existing customers who are actively paying you for this speculative offering. When you forget who is keeping the lights on for you, you may end up losing a portion of your existing revenue and your speculation could fall short. You lost sight of typically the easiest revenue - the revenue you already have. If you have a significant number of clients to “upgrade” off of an older platform and onto your newer one, this becomes even more critical. You want to make that offering INSANELY compelling. It should be your goal to make it fast, fully featured, and 100% plugged into integrations. You should be looking at areas to enhance the offering above and beyond what customers currently have so it’s a no-brainer for them to move, even at a price increase.?

Another component to this is how budgeting and forecasting typically works in large companies - you are given a % increase over last year’s numbers. I agree this is a very shortsighted way to run a business, but it’s easy to implement and measure so it still happens a lot. When you are expected to grow revenue or sales on top of a baseline at Jan 1, anything you lose, you have to sell, install, and flip the invoice switch on something new to overcome - this is a bad spot to be in if you have any sort of attrition.

You should absolutely go out and take risks, speculate within reason, and try to find that product or feature that sells, but have full recognition that dollars spent generating new revenue are dollars that may not be providing value to existing customers. Don’t take existing revenue for granted.

Eliminate Feedback Friction

Your first goal in trying to be more customer OBSESSED should be to eliminate the friction for your customers to give you feedback - any kind of feedback. This is another area where you don’t have to boil the ocean, start simple and build out from there. You could absolutely make your rev 1 accept freeform text feedback that is sent off to an AI vendor in the Netherlands for scoring and has connectors to social media platforms for similar sentiment analysis, but I wouldn’t recommend it.

Take something as simple as a thumbs up and thumbs down button on a global page in your system. With modern logging and telemetry tools like Datadog , 微软 Application Insights, etc…, when a user clicks a simple thumbs up or thumbs down, you can see:

  1. Who the user is and their permissions.
  2. The page the user was on when they clicked on the button. These tools can typically give us details like:
  3. The time it took to load the page, including ALL of the middle tier and backend dependencies and their timings. This allows us to see a waterfall report of everything the system had to do from the front to the backend in order to render the page.
  4. Overall performance of the application and Performance of all areas of the app.?
  5. We can see what the user did in a specific time frame before or after they triggered this event. This can allow us to recreate race conditions or settings that may have been updated prior etc…
  6. We can see any Exceptions or Errors in the frontend, middle tier, or database.
  7. We can trend all of this information over the last 30. 60, 90, or more days.

Placing a zero-friction way for your customers to tell you when they are experiencing pain is CRITICAL to being able to have actionable data directly from your customers. You should develop monitoring and alerting tooling around these metrics to let you know proactively when you, for example, have more than a 2.5x standard deviation in page load time from the last 60 days average. You can get more sophisticated later and add options to allow users to select from a small list of reasons (Performance, UI/UX, Bug, Other, for example) but get something out there ASAP and start digesting the data and taking action.

Develop Deep Relationships

You should have a list of clients that you call upon or visit, preferably at least quarterly. Call this group whatever you’d like, but the concept is to establish a group of diverse, intelligent, strategically important relationships and invest in them…heavily. This group should understand that they don’t have the ability to dictate backlog or gain favor for their particular agenda items, but are there to bring new ideas and advocate for existing backlog items that bring the group as a whole value and are inline with the strategic direction of the product. I am 100% against what is traditionally called “design by committee” but I Stan for Expert Opinion from people I admire and trust.


Be Willing To “Pay” For Good Customer Feedback

If you have tried to develop some sort of customer advisory board or have tried other avenues to get reliable feedback without success, you should be willing to give away your software for good feedback. You should absolutely consider doing things like writing into your contracts a sliding monthly payment scale that offers reduced rates based on something like hours logged providing feedback. Getting as much quality customer feedback as possible, preferably in an easily digestible data format, should be step 1 for anyone building a product. Remember, these are people who should have a vested position in this game and we should be willing to sacrifice some short term revenue for high quality feedback that can shape our roadmap in positive ways and drive much more revenue long term. When you engage with customers at this level, they know you mean business as you are bringing something to the table. IMO, starting the conversation by bringing something to the table (your dollars) is a great way to start an open, collaborative relationship built on trust. Should you take this route, you should absolutely incorporate metrics and some accountability to ensure that both parties are upholding their end of the deal. Your client MUST understand that these discounts are applied under the assumption that they are offering values and should that stop, so will the discounts.?

Closing

Your customers and potential future customers are critical pieces to your business’s success. Without them, you fail, so why would you not engage them deeply at every opportunity possible? If you can’t seem to pry feedback out of your customers, be 100% willing to offer discounts, even giving your software away if that’s what it takes. Tie discounts to the number of items submitted/accepted into your backlog or, minimally, ask the client to send you a summary email monthly containing some high level information like hours spent and output.


Approach building products and working with customers as if you don’t know shit. I’ve seen a number of different ways to view this lately:


“Steve had a unique ability to approach everything with a beginner’s mind” - Steve Jobs wife

Don't be a "know-it-all." Be a "learn-it-all." - Satya Nadella

"In the beginner's mind there are many possibilities, in the expert's mind there are few." Shunryu Suzuki says in Zen Mind, Beginner's Mind


If you think you are customer obsessed, I strongly suggest you take another look, particularly at points of friction your customers may have to provide feedback. Start simple, iterate quickly, demonstrate and highlight value added based on feedback to complete the virtuous cycle and then look to enhance/improve the cycle as a whole.

It’s time we re-up our efforts to engage with our customers on an entirely new level to obtain that competitive advantage. It's again time we do more hard shit together and do it as efficiently, we simply have too much to do to not be as efficient as possible. Let’s be customer OBSESSED!

J Mac

John Emery

Software Architect at Orion Advisor Tech

2 年

Love it... even though many companies develop software using capitalization, I see that practice as a vehicle to gold plate and to defer early releases. Also love Datadog.

要查看或添加评论,请登录

Jonathan McPhail的更多文章

  • Migrating to the Cloud

    Migrating to the Cloud

    Over many years of doing this, I've become a massive fan conceptually of the Strangler Fig pattern by Martin Fowler…

    1 条评论
  • Episode 7: Revenue Is Like Beer - Without It Things Do Not Seem To Go As Well

    Episode 7: Revenue Is Like Beer - Without It Things Do Not Seem To Go As Well

    “… because without beer, things do not seem to go as well.” –Diary of Brother Epp, Capuchin monastery, Munjor Kansas…

    1 条评论
  • Episode 6: Problem Solve, Don't Slay Dragons

    Episode 6: Problem Solve, Don't Slay Dragons

    Episode 6: Problem Solve, Don't Slay Dragons This is one of those things that’s not just important to keep front and…

  • Episode 5: If Everything Is Priority 1, Nothing Is

    Episode 5: If Everything Is Priority 1, Nothing Is

    Episode 5: If Everything Is Priority 1, Nothing Is Communicating strategy, some of which may only exist in your head…

  • Episode 3: Mental Health

    Episode 3: Mental Health

    Episode 3: Mental Health Many of you are likely aware, but October 4th 2022 is World Mental Health Day, September is…

    2 条评论
  • Episode 2: Scaling Software Engineering Teams

    Episode 2: Scaling Software Engineering Teams

    Episode 2: Scaling Software Engineering Teams Quickly on the heels of talking about things like Mythical Man Month and…

    1 条评论
  • The Most Important Part of Building Software: People (duh!)

    The Most Important Part of Building Software: People (duh!)

    The Most Important Part of Building Software: People (duh!) This is the first in what I hope is a series of posts about…

    10 条评论

社区洞察

其他会员也浏览了