10 episodes

Software at Scale is where we discuss the technical stories behind large software applications.

www.softwareatscale.dev

Software at Scal‪e‬ Utsav Shah

    • Technology
    • 4.8 • 4 Ratings

Software at Scale is where we discuss the technical stories behind large software applications.

www.softwareatscale.dev

    Software at Scale 10 - David Cramer: CTO, Sentry

    Software at Scale 10 - David Cramer: CTO, Sentry

    Listen now | David Cramer is the co-founder and CTO of Sentry, a monitoring platform helps every developer diagnose, fix, and optimize the performance of their applications. Before this, he worked at Dropbox and Disqus. Apple Podcasts | Spotify | Google Podcasts

    Get on the email list at www.softwareatscale.dev

    • 1 hr 13 min
    Software at Scale 9 - Beyang Liu: CTO, Sourcegraph

    Software at Scale 9 - Beyang Liu: CTO, Sourcegraph

    Listen now | Beyang Liu is the CTO and co-founder of Sourcegraph, a code search and intelligence tool for developers. He used to be a software engineer at Palantir, and a research assistant at Stanford University. Apple Podcasts | Spotify | Google Podcasts Highlights

    Get on the email list at www.softwareatscale.dev

    • 1 hr 22 min
    Software at Scale 8 - Farhan Thawar: VP Engineering, Shopify

    Software at Scale 8 - Farhan Thawar: VP Engineering, Shopify

    Listen now | Farhan Thawar is VP Engineering for Channels and Mobile at Shopify. Previously he was the CTO and Co-Founder at Helpful, CTO Mobile at Pivotal and VP, Engineering at Pivotal Labs. He was named one of Toronto's 25 most powerful people. Apple Podcasts |

    Get on the email list at www.softwareatscale.dev

    • 1 hr 17 min
    Software at Scale 7 - Charity Majors: CTO, Honeycomb

    Software at Scale 7 - Charity Majors: CTO, Honeycomb

    Charity Majors is the CTO of Honeycomb, a platform that helps engineers understand their own production systems through observability. Honeycomb is very different from traditional monitoring tools like Wavefront as it is built for data with high cardinality and high dimensionality, which can instantly speed up debugging of many problems.

    Apple Podcasts | Spotify | Google Podcasts

    NOTE: This episode has some explicit language.

    We talk about observability, monitoring, building your own database for a particular use case, starting a developer tool startup, having the right oncall culture, getting to fifteen minute deployments and more.

    Highlights

    Notes are italicized

    05:00 - High cardinality and high dimensionality in Honeycomb. Data retention in Honeycomb - 60 days. Many monitoring systems, like Dropbox’s Vortex, downsample data in two weeks

    13:00 - Observability driven development. The impact of deploying code within 15 minutes of it being merged in. Synchronous and asynchronous engineering workflows

    19:00 - Setting up oncall rotations. What the size of a rotation should be

    21:00 - How often should someone on a 24/7 oncall rotation be woken up? Once or twice. But there are exceptions. The impractical nature of some of Google SRE book’s “Being Oncall” chapter. Oncall for managers

    31:00 - Why are monitoring tools so ubiquitous compared to observability tools?

    36:00 - Observability & Tracing. What the future of observability infrastructure might look like

    40:00 - What will the job of an SRE look like in the future? The split of roles in software engineering organizations in the future

    43:00 - Shipping code faster makes engineers happier. How do you ensure your engineering organization is healthy, and the metrics to use. Learned helplessness in engineering organizations, and leadership failures

    51:00 - Building internal tools in-house vs using external tools. The large impact that designers at Honeycomb have had on the product.

    58:00 - The story of starting Honeycomb. Creating a “Minimum Lovable Product”. A description of Honeycomb internal architecture. Dealing with tail latencies.

    71:00 - Continuous Deployment and releasing code quickly. Use calendly.com/charitym if you want to chat with Charity about continuous deployment best practices or anything else.

    Get on the email list at www.softwareatscale.dev

    Software at Scale 6 - Distributed Systems with Indranil Gupta

    Software at Scale 6 - Distributed Systems with Indranil Gupta

    Listen now | Indranil Gupta (Indy) is a Professor of Computer Science at the University of Illinois, Urbana Champaign. He leads the DPRG (Distributed Protocols Research Group) and runs popular Cloud Computing MOOCs on Coursera. His work has inspired software that runs in many production services, like

    Get on the email list at www.softwareatscale.dev

    • 1 hr 19 min
    Software at Scale 5 - Kyle Consalus

    Software at Scale 5 - Kyle Consalus

    Kyle is a Software Engineer at Dropbox. He’s currently working in the Core Sync area in charge of the Dropbox Sync Engine and other related components. He was previously the tech lead of the Build Infrastructure team, the tech lead of the Android team at Dropbox, and a senior engineer at Google.

    Kyle has been thinking about developer productivity for a while, and his tenure at Dropbox (~9 years) gives him a unique insight into the origins and consequences of some large technical decisions, the value of code review, and making developers more effective in general.

    Listen on Apple Podcasts or Spotify.

    We discussed technical migrations, test quarantine, the purpose of code review, multi-round code reviews, the popularity and community of Rust, the properties of Go, good software design, the design of the Dropbox sync engine, the role of a tech lead, and deciding between staying an IC vs. going into management.

    Highlights

    2:20 - Build Infrastructure at Dropbox. Dropbox has an in house CI Server that was written by David Cramer (CTO of Sentry). Dropbox’s internal CI Server might have been the first user of Sentry. How Bazel came about at Dropbox.

    5:40 - Bazel might have been an overcorrection at Dropbox. The danger of copying Google for internal tools.

    8:23 - The precision of Bazel and infrastructural investments to keep it running. Moving things into the Bazel world could be challenging.

    17:30 - How should a decision maker decide between investing in a customized but potentially superior developer experience, vs sticking with open source tools or external best practices? For example: Git vs. Mercurial

    24:00 - Enforcing the right amount of “best practices” on the rest of engineering.

    26:30 - One way to think about developer tools in your organization.

    33:40 - The issues you run into if you apply a systems engineering mindset to developer tools, compared to a product development mindset.

    37:42 - What test quarantine is, and why an engineering organization needs it.

    47:40 - Viewpoints on code review and how they’ve evolved over time. The consequences of not catching a bug in code review.

    56:20 - Maintaining the reliability of applications that are being deployed on millions of desktop hosts and Android devices. User reports were often wrong.

    62:30 - Being a long time language nerd, and the code design of a complex sync engine. Not using standard library hashmaps due to non determinism.

    77:50 - A discussion on Golang.

    88:00 - Contrasting Golang and Rust. Diffused benefits vs. specific benefits.

    96:50 - Being a good tech lead, and deciding between staying an individual contributor, vs. going into management. Being smart vs. being obsessive as a reason for success in software, compared to other things. The difficulty of being a Tech Lead Manager (TLM).

    Get on the email list at www.softwareatscale.dev

Customer Reviews

4.8 out of 5
4 Ratings

4 Ratings

Top Podcasts In Technology