Why a brag page?
It’s a way to show keep track of some key accomplishments I’ve achieved, almost like “levels-ups”.
While I’m starting this as more like a resume style format, I plan on keeping this updated as I go.
Thanks for stopping by and letting me brag a little!
If you are recruiter, then this might be useful: Recruiters
- Add a comment to this page to say hi!
- Or ↗ Ask me Anything
Check out these google analytic metrics if you want to see a pretty chart. Who doesn’t love pretty graphs.
- 💯 Emotional Intelligence & Soft Skills
- A sense of ownership and drive to deliver, from “cradle to grave” mentality.
- Adaptability, willingness to learn and change.
- I’m a big advocate on continual learning, which hopefully my blog shows!
- Repeating the same
nyears of experience over and over is something to be avoided.
- I tend to embrace change and want to continue to improve.
- Pairing up with strong engineers. I’m not a fan of lone wolf. A strong engineering team of “good developers” will out perform the so called “10x” developer and be better for the company both logistically and culturally.
- Generalist experience valued, while allowing for expertise and deeper knowledge.
- Remote-First environments that value asynchronous communication and strong writing abilities.
- I’m a big fan of Gitlabs Handbook First approach, and have advocated for and done documentation as code, architectural decision records, and other written forms of decision making in most of my career.
- Go! I’m a Gopher, and have been investing in excellence and quality in Go for the last season in my career. I care about delivery value quickly, while I also care about the “craft” of well-designed and maintainable code.
Someone might look at deploying a webservice and spin up an EC2 linux webserver and call it done.
What would go through my head:
- Can I host this using a managed service such as ECS Fargate to avoid the operational toil of managing my own instance?
- Can I benefit from a service like this with autoscaling to ensure a failed task can automatically recover or allocate work to a new node?
- Did the web service add the instrumentation libraries for opentracing or the appropriate library?
- Are structured logs being used to ensure automatic parsing by the logging provider?
- Is the service being deployed via a CICD provider instead of manually?
- Are unit tests being run on developer machines with hooks and also by CI system?
- Are integration tests being run prior to deployment?
- Are service level objectives defined and tracked if required to ensure service isn’t over-engineered, but also allocated appropriate time for new work if problems occur that would impact customer satisfaction?
- Is the core infrastructure defined via code?
- Is the application configured to pull its configuration from environment variables or cloud configuration provider rather than requiring manual changes?
Things I'd Love to Work More On
PowerShell (CrossPlatform), .NET Framework
Infrastructure As Code
SQL (Dev, Design & Operations)
Distributed Systems & Data
March 2021 - Current Thycotic Senior Software Engineer (AWS/Go)
⚡ Built Helm and Pulumi stack for Kubernetes to provide continuous deployment, resulting in < 15 mins from PR merge to app live in Kubernetes.
⚡ Wrote Go task automation for team automating developer tooling setup (1 command to bootstrap), automatic updates of dependencies, security checks, configuration, go builds, container publishing and more.
⚡ Improved SLDC applying DevOps practices towards trunk based development and infra-as-code.
⚡ Did the majority of monorepo migration work and tooling to support single repository workflow for Angular & Go developers to simplify collaboration and development work.
⚡ Supported PR Reviews and oversight of code from offshore team programming primarily in Go.
⚡ Go: added structured logging, APM integration to support observability, and codified health monitors and synthethic checks with Pulumi Datadog SDK
⚡ AWS Architecture redesign for ECS Fargate container driven support of Go services, as well as supporting Docker configuration.
⚡ Go & Task tooling to support developer workflow improvements for pre-commit, building, and other tooling.
⚡ Investigative work for Kubernetes and usage of microservices using Dapr.
Things I Used
Go, AWS/Azure, Pulumi, Kubernetes, Terraform, Terragrunt, Bash, Kubernetes, Dapr (Distributed Application Runtime) for Microservices. Datadog
Work under NDA. Public related blog posts on general technology topics where posted on blog as well as some general studies on applying Go with TDD and algorithm studies are listed here.
2014 - 2021 Altus Group Senior Developer (Database & Dev Operations)
Senior Individual Contributor with cross-team impact functioning as Database/Site Reliability Engineer
Started with focus on SQL Server development, architecture, and performance tuning. Migrated to Development operations team during tenure and operated on development through operations. Heavy focus on production reliability for data tier. Additional focus on automation for non-release tasks, such as Terraform deployments, AWS SSM management, automated runbook creation and more. Functioned in part as Site Reliability Engineer with mixed cross-functional impact.
⚡ Part of transformation of on-premise to Cloud based
⚡ Designed AWS Lambda serverless solution for providing KPI insight
⚡ Improved velocity of infrastructure deployments by using Terraform Cloud, deployed a PaaS based AWS RDS product.
⚡ Built very detailed runbook and documentation library supporting detailed insight on databases, team processes, incident response, and more. Inspired by GitLab’s concept of “handbook first”, I promoted collaborative codification of knowledge among my team
⚡ Designed and built the primary systems management and configuration used to rapidly bootstrap hundreds of instances and allow quickly pushing updates out. solutions.
⚡ Built robust AMI pipelines combining Azure Pipelines & Packer, including automated tests, matrix builds, and detailed documentation.
⚡ Promoted stronger code based pull request driven workflows with “Gitops” focus, code reviews, and mentoring of other junior team members.
⚡ Database Performance tuning, architectural design, and development. ⚡ Initial observability tooling advocate.
Things I Used
MSSQL Server, PowerShell, AWS, AWS SDK, Terraform, Lambda, S3, Athena, Chatops w/Slack, ECS, Docker, Datadog, Grafana, InfluxDB, Telegraf. Python, C#, Excel when I absolutely no other choice, …and a lot more.
Product related work under NDA
Blog posts on various general concepts related to Databases, DevOps, PowerShell, AWS, and technology
Implementation Guide This was a major effort in migrating content from an outdated large word doc to static generated website with analytics. Load testing, sizing guides, and more were improved. All docs for SQL Server and load test summaries were due to my efforts. CI driven via markdown file updates made this a quick process to keep things up to date. 👍
2011-2014 Selene Finance SQL Developer
Initially rehired for Asset Analyst work, was recruited into development team after learning SQL. Continued with full SQL Server development
⚡ Relational database design performance, development, and
⚡ Performed work on business analyst, qa, and developer for the work assigned.
In case you are bored, I’ve done this as well:
Freddie Mac: Loss Mitigation during mortgage crisis
Litton Loan Servicing: Loss Mitigation during mortgage crisis
Greentree Servicing: Mortgage Collections
Synergetic Communications: Mortgage Collections
Vanderbilt Mortgage: Mortgage Collections
Worked at a private school teaching
Worked at a Library & Migrated an entire small military base library from one building the other. The darn dewy decimal system is what I blame for my eyes now. 😁
I’m really glad I’m not working in the mortgage industry & collections oriented roles anymore.
It did teach me to handle high stress situations and do pretty decent at negotation and grow stronger in my communication skills, so there’s some positive to that part of the journey! 😉
First Programming Language: vba 😆
Dark Or Light: join the dark side
Preferred OS: any. Right now using macOS for development, and working in Docker containers when possible
Terminal: Iterm2 & I ❤️ pwsh
I’m a big believer in #LearnInPublic approach, and have written for years on my blog on a variety of topics, demonstrating my ability to learn new technology and investment in continued excellence in my craft. This should help demonstrate my strengths in written communication.
A few highlights:
- Brag - A page with more detail and links than the resume
- Go - My Go references docs with tips/templates/practices
- Go Articles - A variety of posts (over 104 at time of resume)
- Using Azure DevOps for Private Go Modules - featured by Azure DevOps Blog
Open Source Contributions:
While the majority of my work is NDA, I try to contribute when possible upstream as well as publish when possible.
A few projects on GitHub:
- sheldonhull - landing page (updated with Github Actions)
- My blog, documented setup and used as a knowledge base
- Go Semantic Linebreaks - A simple CLI for line normalization, planning to use Goldmark for structured text parsing when time permits
- Magetools - Go based task library for common tasks. I use this instead of Makefiles, as it leverages Mage and the cross-platform power of Go for automation.
- CI-Configuration Files: Common lint/tooling configuration to minimize setup of new projects.
I also contribute back to various projects I use when possible: PR’s I’ve Authored on GitHub As always, any posts on this site are not a reflection of my past or present employer.