Sherman On Software Latest

  • The Never Rewrite Podcast, Episode Eighty-Five, 2024 Year In Review

    The Never Rewrite Podcast, Episode Eighty-Five, 2024 Year In Review

    Isaac and I reflect back on NeverRewrite in 2024. We look back through our episodes, thank our listeners, and outline our plans for 2025.

    A true thank you to everyone who listens, we are honored by your gift of time.

    Watch on YouTube or listen to it at Spotify, Apple Podcasts, or Amazon Music, and let us know if you have ever been involved in a rewrite. We would love to have you on the show to discuss your experience!

  • The Never Rewrite Podcast, Episode Eighty-Four, The Impact of AI on Recruiting

    The Never Rewrite Podcast, Episode Eighty-Four, The Impact of AI on Recruiting

    Special guest Paul Giron returns to discuss how AI is transforming the interview experience. Learn how AI is changing how candidates are assessed, the shift towards remote interviews, and the evolving expectations of candidates. The discussion delves into the implications of AI in recruitment, including potential biases and the need for organizations to adapt their interview processes to attract top talent.

    Paul’s contact information: https://www.linkedin.com/in/paulpgiron/

    paul@g-techrecruitment.com

    Watch on YouTube or listen to it at NeverRewrite, Spotify, Apple Podcasts, or Amazon Music, and let us know if you have ever been involved in a rewrite. We would love to have you on the show to discuss your experience!

  • The Never Rewrite Podcast, Episode Eighty-Three, The Impact of AI on Recruiting

    The Never Rewrite Podcast, Episode Eighty-Three, The Impact of AI on Recruiting

    Special guest Paul Giron discusses the transformative impact of AI on recruiting and interviewing processes. He highlights the challenges faced by recruiters in adapting to AI tools, emphasizing that while AI can streamline resume sorting, it does not necessarily improve the quality of hires. The discussion also touches on the importance of understanding high performers within organizations and how structured interviewing can enhance recruitment outcomes. Ultimately, the conversation reflects on the need for organizations to invest in training recruiters to leverage AI effectively and improve hiring practices.

    Watch on YouTube or listen to it at NeverRewrite, Spotify, Apple Podcasts, or Amazon Music, and let us know if you have ever been involved in a rewrite. We would love to have you on the show to discuss your experience!

  • Cost To Serve For Staff+ SaaS Developers

    Cost To Serve For Staff+ SaaS Developers

    Cost To Serve is a critical metric for Staff+ SaaS Developers to understand because it shapes your understanding of the business.  Extremely oversimplified, Cost To Serve is the cost of  everything that goes into producing, running, and supporting software, divided by the number of customers.

    Cost To Serve = [The cost of everything] / [Number of Customers]

    This is extremely inaccurate, but it helps to point out two major concepts.  First, a large part of Cost To Serve is fixed.  Developer salaries, aka producing software, do not change based on the number of customers.  This leads to the second concept, SaaS pricing models work on leverage.  As the number of customers goes up, the fixed costs to serve each one goes down.

    So, the path to success is to get as many customers as possible right?  No, because not all costs are fixed, and not all customers are profitable.

    Not All Customers Are Profitable

    The first problem with the oversimplified view is that not all customers cost the SaaS the same amount of money.  This is why SaaS pricing includes feature and usage tiers.  The problem is that the features and tiers don’t exactly align with usage and cost.

    Pricing based on Contacts is standard for CRMs, charging for imports is rare.  A customer who imports 1 million contacts once has a lower cost than one who reimports a million contact list every week.

    Webhooks never make it into pricing models, but their costs add up.

    There are dozens of legitimate usage patterns that can make the difference between profitable and unprofitable customers.  You won’t find them on the pricing page, but chances are your finance department has at least a vague model.  It is expected that some customers will be more profitable than others; and that some will even be unprofitable.

    You Need A Model For Cost To Serve

    It doesn’t matter what your company’s Cost To Serve is and you don’t need to know the fixed costs.  What you need is a model to evaluate customer usage.  You need to be able to explain which usage patterns are expensive and estimate the potential costs of new features.

    If your SaaS is complex, try breaking it down like Big-O notation.  What costs scale linearly, which ones are exponential?

    Your model can improve over time, the important thing is to start today.  Cost To Serve is a critical metric for SaaS companies; as a Staff+ Developer you need to understand it, and how it differs from your company’s pricing model.

  • In A Remote First World, Being Local Is The Only Leverage A Developer Has

    In A Remote First World, Being Local Is The Only Leverage A Developer Has

    I was speaking with a VP of Software Development last week and he gave me a brain bursting bon mot: In a remote first world, being local is the only leverage a developer has.  We were discussing the situation at a true remote-first SaaS; they have developers in the USA, Ireland, Poland, Costa Rica, Brazil, and Australia.  Becoming globally remote first is not cheap or easy, but once you’ve done it, the marginal cost of a developer in Poland is 60% of one in the USA.

    He continued, “from a cost perspective, you can either hire more developers, or more senior (expensive) developers.  It’s no longer about where anyone inside the company is, or how hard it is for them to work together.  It’s about how well they understand the customer’s culture.”

    Thirty years ago outsourcing turned out to be a mirage because the difficulty of working together outweighed the cost savings.  Today, being able to assemble people from everywhere is part of being a global SaaS.

    Which begs the question, how well do you understand your customers?

  • The Never Rewrite Podcast, Episode Eighty-Two, Can You Like Tests And Also Believe You’re Faster Without Them?

    The Never Rewrite Podcast, Episode Eighty-Two, Can You Like Tests And Also Believe You’re Faster Without Them?

    Isaac and i discuss the balance between unit testing and the need for speed in software development. The discussion delves into the contexts in which testing is most valuable, the challenges of rapid development, and real-world examples of testing practices. We wrestle with the idea of adapting testing strategies based on the specific project and team dynamics.

    Watch on YouTube or listen to it at NeverRewrite, Spotify, Apple Podcasts, or Amazon Music, and let us know if you have ever been involved in a rewrite. We would love to have you on the show to discuss your experience!

  • SaaS Project Deadlines Are Artificial

    SaaS Project Deadlines Are Artificial

    In SaaS development, almost all delivery deadlines are artificial.  The code won’t be burned onto a chip, CDs don’t go gold, and no physical media will be created or sent anywhere.  Outside of regulatory changes, SaaS companies simply don’t have external deadlines.

    And yet, almost every project I’ve ever worked on had a deadline.  Usually an aggressive deadline.

    Artificial deadlines are social contracts; you have to commit to needing the work and you have to commit enough people to get the work done on time.

    In the SaaS world, missed deadlines are management failures.  The work didn’t need to be done, as evidenced by the fact that it wasn’t done and the sun still shines.  Management didn’t allocate enough people or time, otherwise the work would have been completed.  Every missed deadline breaks trust and erodes your teams.

    The alternative is simple, don’t set artificial deadlines.

  • The Never Rewrite Podcast, Episode Eighty-One, The Pause

    The Never Rewrite Podcast, Episode Eighty-One, The Pause

    In this episode Isaac and I discuss The Pause. ‘The Pause’ is a critical phase in a rewrite; where development on the old system is halted to speed up delivery of the replacement system. We discuss the inherent risks of The Pause, the implications for customer value, and the often misguided desire for dramatic reveals in software releases. The conversation emphasizes the importance of maintaining continuous value delivery and offers strategies to avoid the pitfalls associated with pausing development.

    Watch on YouTube or listen to it at NeverRewrite, Spotify, Apple Podcasts, or Amazon Music, and let us know if you have ever been involved in a rewrite. We would love to have you on the show to discuss your experience!

  • The Never Rewrite Podcast, Episode Eighty, What is “De-Risking”?

    The Never Rewrite Podcast, Episode Eighty, What is “De-Risking”?

    Isaac and I explain what we mean by “de-risking a project”. We push iterative delivery over big bang releases, using gambling analogies to illustrate expected outcomes and risk management. The conversation emphasizes the value of decoupling projects to reduce risk and the significance of obtaining feedback early in the development process. These strategies not only mitigate risks but also provide opportunities for value delivery and informed decision-making throughout the project lifecycle.

    Watch on YouTube or listen to it at NeverRewrite, Spotify, Apple Podcasts, or Amazon Music, and let us know if you have ever been involved in a rewrite. We would love to have you on the show to discuss your experience!

  • The Never Rewrite Podcast, Episode Seventy-Nine, The Toxicity of “Certainty”

    The Never Rewrite Podcast, Episode Seventy-Nine, The Toxicity of “Certainty”

    Isaac and I explore the concept of certainty in software development and its potential toxicity. We discuss how certainty can lead to poor decision-making, limit experimentation, and encourage behaviors that contribute to toxic environments. We discuss the balance between certainty and uncertainty, especially for leadership roles, and the danger of strong opinions masquerading as certainty.

    Watch on YouTube or listen to it at NeverRewrite, Spotify, Apple Podcasts, or Amazon Music, and let us know if you have ever been involved in a rewrite. We would love to have you on the show to discuss your experience!