Skip to content

Instantly share code, notes, and snippets.

View jessedearing's full-sized avatar

Jesse Dearing jessedearing

View GitHub Profile
@jessedearing
jessedearing / resume.json
Last active April 27, 2026 22:41
resume.json
{
"basics": {
"name": "Jesse Dearing",
"label": "Staff SRE & Platform Engineer | Kubernetes · AWS · Terraform · Go · Rust",
"image": "https://jesse.dev/images/avatar-2019-05-31.png",
"email": "me@jesse.dev",
"website": "https://jesse.dev",
"summary": "I've spent over a decade at the intersection of building software and keeping it running. I care deeply about both sides of that equation.\n\nMy focus is platform engineering and site reliability: designing the infrastructure, tooling, and systems that let product engineers ship fast, securely, and with full visibility into how their code is serving customers. I've worked across the full spectrum from bare-metal in data centers to multi-region cloud deployments. Software-defined infrastructure is what makes it possible to manage, automate, and observe systems at scale, and building that foundation is where I do my best work.\n\nI'm most effective in Senior and Staff IC roles. Where shaping architecture, unblocking teams, solving problem
#!/usr/bin/env python3
import base64
import json
from kubernetes import config, client, dynamic
from cryptography import x509
from cryptography.hazmat.backends import default_backend
config.load_kube_config()
dc = dynamic.DynamicClient(client=client.ApiClient())
#!/usr/bin/env python3
import base64
import argparse
from datetime import datetime, timedelta
from cryptography import x509
from cryptography.hazmat.backends import default_backend
from kubernetes import client, config
config.load_kube_config()
@jessedearing
jessedearing / g.go
Last active October 3, 2019 03:22
Simple go program to record timings for git pulls, pushes, and fetches
package main
import (
"fmt"
"os"
"os/exec"
"strconv"
"strings"
"time"
)
export ETCDCTL_API=3 ETCDCTL_CACERT=$ETCD_TRUSTED_CA_FILE ETCDCTL_CERT=$ETCD_CERT_FILE ETCDCTL_KEY=$ETCD_KEY_FILE ETCDCTL_DISCOVERY_SRV=$ETCD_DISCOVERY_SRV
resource "aws_db_instance" "main" {
allocated_storage = 10
storage_type = "gp2"
engine = "mysql"
engine_version = "5.7"
instance_class = "db.t2.micro"
name = "main"
username = "root"
password = "${data.external.something_in_one_password.result.password}"
parameter_group_name = "default.mysql5.7"
data "external" "something_in_one_password" {
program = ["${path.cwd}/bin/one_password.sh"]
query = {
vault = "Personal"
uuid = "abc123"
}
}
#!/usr/bin/env bash
set -e
# Eval so we can set the JSON values as shell variables
eval "$(jq -r '@sh "VAULT=\(.vault) UUID=\(.uuid)"')"
# Get the token or password from the first field of the second section (this is just how I store them, but you could use jq's select
password=`op get item --vault=$VAULT $UUID | jq -r '.details.sections[1].fields[0].v'`
const express = require('express')
const Webtask = require('webtask-tools')
const bodyParser = require('body-parser')
const MessagingResponse = require("twilio").twiml.MessagingResponse
const request = require('request-promise-native')
var app = express();
app.use(bodyParser.json());

Risky Business

Presenter

Jesse Dearing

Abstract

As we operate production systems they inevitably fail. As they fail and fail and fail again we as operators start to identify the way they fail and we know the causes of the failures. What if we could see the future and predict failures before they happen. We're