About Me

My name is Steve. I am a Principal Engineer at Relativity and an Adjunct Professor of Software Engineering at DePaul University.

My primary area of responsibility at Relativity is the storage system behind RelativityOne, Relativity’s cloud-based software-as-a-service e-Discovery product. I have designed and implemented a number of components in both the structured (SQL) and unstructured (object / file) storage backends. Before Relativity, I worked in the financial industry for 15 years, primarily for the financal research firm Morningstar. I am a CFA charterholder, but I rarely use these skills professionally nowadays.

At DePaul, I teach three courses: SE 480: Software Architecture I, SE 457: Service-Oriented Architecture, and SE 441: Continuous Delivery and DevOps. I have been teaching at DePaul since 2017.

For more about my professional history, please visit my LinkedIn profile.

I have blogged on-and-off since 2004. Over the last 15+ years, I have published a number of blog post series and projects on this website. I also have a number of open source projects on GitHub.

Recent Blog Posts

Friday 2024-04-26 Assorted Links
Assorted Links links
Published: 2024-04-26
Friday 2024-04-26 Assorted Links

Assorted links for Friday, April 26:

  1. Apache DataSketches: A software library of stochastic streaming algorithms
  2. Sysdig 2022 Cloud-Native Security and Usage Report: Stay on Top of Risks as You Scale
  3. validkube: Validkube combines the best open-source tools to help ensure Kubernetes YAML best practices, hygiene & security
  4. Best Practices for Running Stateful Applications on Kubernetes
  5. The Twelve-Factor App
  6. Multi-Runtime Microservices Architecture
  7. What Comes after Microservices? Multi-Runtime Microservices with Bilgin Ibryam at QCon London
  8. Microservices guru warns devs that trendy architecture shouldn’t be the default for every app, but ‘a last resort’
  9. Istio as an Example of When Not to Do Microservices
  10. Zhamak Dehghani on Data Mesh, Domain-Oriented Data, and Building Data Platforms
Thursday 2024-04-25 Assorted Links
Assorted Links links
Published: 2024-04-25
Thursday 2024-04-25 Assorted Links

Assorted links for Thursday, April 25:

  1. Onboarding SLOs for Salesforce services
  2. Curiefense: An application security platform
  3. It’s always DNS… except when it’s not: A deep dive through gRPC, Kubernetes, and AWS networking
  4. Set up a Terraform Pipeline with GitHub Actions and GitHub OIDC for AWS
  5. Improving software supply chain security with tamper-proof builds
  6. How Netflix Content Engineering makes a federated graph searchable
  7. The complete guide to protecting your APIs with OAuth2 (part 1)
  8. How to Use Docker to Containerize Java Web Applications: Tutorial for Beginners
  9. Detecting silent errors in the wild: Combining two novel approaches to quickly detect silent data corruptions at scale
  10. Awesome C: A curated list of C good stuff
Wednesday 2024-04-24 Assorted Links
Assorted Links links
Published: 2024-04-24
Wednesday 2024-04-24 Assorted Links

Assorted links for Wednesday, April 24:

  1. Pharos: The Observability Platform at Workday
  2. How We Halved Go Monorepo CI Build Time
  3. DevOps and Cloud InfoQ Trends Report – June 2022
  4. SLSA: Securing the Software Supply Chain
  5. AWS Security Maturity Model
  6. Uncurled – everything I know and learned about running and maintaining Open Source projects for three decades.
  7. .bazelrc flags you should enable
  8. OpenFeature: Standardizing Feature Flagging for Everyone
  9. Building a Platform for Serving Recommendations at Etsy
  10. Observability 4 JVM Frameworks with Grafana in Java and Kotlin
Tuesday 2024-04-23 Assorted Links
Assorted Links links
Published: 2024-04-23
Tuesday 2024-04-23 Assorted Links

Assorted links for Tuesday, April 23:

  1. Cost Optimisation In The Cloud – Practical Design Steps For Architects and Developers – Part 1
  2. Cost Optimisation In The Cloud – Practical Design Steps For Architects and Developers – Part 2
  3. Optimizing TCP for high WAN throughput while preserving low latency
  4. Slowing Down to Speed Up – Circuit Breakers for Slack’s CI/CD
  5. Delivery Lead Time In Practice
  6. HashiCorp 2023 State of Cloud Strategy Survey: Cloud maturity drives operational efficiency
  7. Application architecture: A quick guide for startups
  8. Locking Engineering Hierarchy
  9. Locking Engineering Principles
  10. A Look at AzOps for Azure Infrastructure Management
Monday 2024-04-22 Assorted Links
Assorted Links links
Published: 2024-04-22
Monday 2024-04-22 Assorted Links

Assorted links for Monday, April 22:

  1. Improving Meta’s SLO workflows with data annotations
  2. Patterns of Distributed Systems: Request Batch
  3. Patterns of Distributed Systems: Fixed Partitions
  4. Patterns of Distributed Systems: Emergent Leader
  5. Patterns of Distributed Systems: Clock-Bound Wait
  6. Faster ML Experimentation at Etsy with Interleaving
  7. Towards Machine Learning Observability at Etsy
  8. Announcing built-in container support for the .NET SDK
  9. A primer on Roaring bitmaps: what they are and how they work
  10. A Developer’s Guide to Terraform
Friday 2024-04-19 Assorted Links
Assorted Links links
Published: 2024-04-19
Friday 2024-04-19 Assorted Links

Assorted links for Friday, April 19:

  1. APIs as infrastructure: future-proofing Stripe with versioning
  2. Versioning releases from a monorepo
  3. Securing the Supply Chain of Nothing
  4. Does the GitOps Emperor Have No Clothes?
  5. Ninja Van’s monitoring stack
  6. Continuous Load Testing: Building a culture of performance with Koi Pond
  7. Open Source Software (OSS) Secure Supply Chain (SSC) Framework Simplified Requirements
  8. Git’s database internals I: packed object store
  9. Scaling Git’s garbage collection
  10. Viewing the world as a computer: Global capacity management
Thursday 2024-04-18 Assorted Links
Assorted Links links
Published: 2024-04-18
Thursday 2024-04-18 Assorted Links

Assorted links for Thursday, April 18:

  1. How to Roll Your Kafka Cluster With Zero Downtime and No Data Loss
  2. Risk Assessments for AWS Access are Not Just for Large Companies
  3. How DoorDash Governs Its Infrastructure with Open Policy Agent
  4. State of AWS Security: A Look Into Real-World AWS Environments
  5. The Future of Ops Is Platform Engineering
  6. Announcing the 2022 Accelerate State of DevOps Report: A deep dive into security
  7. What’s Inside Of a Distroless Container Image: Taking a Deeper Look
  8. The Art of Logging: Creating a human- and machine-friendly logging format
  9. How to select technology for Data Mesh
  10. Enabling static analysis of SQL queries at Meta
Wednesday 2024-04-17 Assorted Links
Assorted Links links
Published: 2024-04-17
Wednesday 2024-04-17 Assorted Links

Assorted links for Wednesday, April 17:

  1. Introducing Wolfi: The first Linux (un)distro designed for securing the software supply chain
  2. The Top 5 kubectl Plugins by GitHub Stars
  3. Why and How eBay Pivoted to OpenTelemetry
  4. Boosting Kubernetes container runtime observability with OpenTelemetry
  5. Common mistakes in DevOps metrics
  6. Container Tools, Tips, and Tricks - Issue #2
  7. Introducing Finch: An Open Source Client for Container Development
  8. Seeing through hardware counters: a journey to threefold performance increase
  9. The Evolution of DevOps
  10. The Importance of Just-in-Time Access for Least Privilege in the Cloud
Tuesday 2024-04-16 Assorted Links
Assorted Links links
Published: 2024-04-16
Tuesday 2024-04-16 Assorted Links

Assorted links for Tuesday, April 16:

  1. Shared Responsibility Model
  2. Estimating the effort to build a Bazel CI/CD
  3. The Secret Sauce of Tik-Tok’s Recommendations
  4. Tulip: Modernizing Meta’s data platform
  5. How the GitHub Docs team uses GitHub Projects
  6. io_uring and networking in 2023
  7. The technology behind GitHub’s new code search
  8. Fast and Furious: Doubling Down on SBOM Drift
  9. How DoorDash Upgraded a Heuristic with ML to Save Thousands of Canceled Orders
  10. How to Increase Deployment Observability and Simplify Deployment Pipelines
Monday 2024-04-15 Assorted Links
Assorted Links links
Published: 2024-04-15
Monday 2024-04-15 Assorted Links

Assorted links for Monday, April 15:

  1. cURL audit: How a joke led to significant findings
  2. Incident travel time: The real investment is how fast you get there
  3. Introducing Hermes, An Open Source Document Management System
  4. Unreadable Metrics: Why You Can’t Find Anything in Your Monitoring Dashboards: A Guide to Effective Dashboard Design for DevOps and SRE
  5. A Complete Guide to Google’s Core Web Vitals and How to Optimize Them
  6. What Are Structured Logs and How Do They Improve Performance?
  7. The life of a DNS query in Kubernetes
  8. Building a Staging Environment for Data Teams
  9. Getting Started With Java Development in 2023 — An Opinionated Guide
  10. Fairness in multi-tenant systems