Graham Brooks

My name is Graham Brooks. I am a Security and Infrastructure technologist who likes to talk to people and solve hard problems. I am a CISSP and hold professional certifications in Linux Server Automation, Cloud Computing, and Security Administration. Currently, I work as the Site Reliability Engineer and as the Security Officer for AvatarFleet, where we provide HR and logistics support to the largest names in the transportation industry.

Beyond work, I am a husband, father, and community activist. In my free time, I enjoy running, hiking, powerlifting, and all kinds of analog fun.

I believe it’s important to document your work and reflect on what you learn along the way. This site serves as both a portfolio of personal and professional projects and a traditional blog where I share ideas that interest me. Topics range from emerging IT trends and technical tutorials to personal perspectives on the industry and random philosophy thoughts.

GitHub Activity

1101 contributions on GitHub in the last year
0 contributions on 2025-06-081 contributions on 2025-06-090 contributions on 2025-06-100 contributions on 2025-06-111 contributions on 2025-06-123 contributions on 2025-06-130 contributions on 2025-06-140 contributions on 2025-06-150 contributions on 2025-06-160 contributions on 2025-06-173 contributions on 2025-06-180 contributions on 2025-06-190 contributions on 2025-06-200 contributions on 2025-06-210 contributions on 2025-06-220 contributions on 2025-06-230 contributions on 2025-06-240 contributions on 2025-06-252 contributions on 2025-06-260 contributions on 2025-06-270 contributions on 2025-06-280 contributions on 2025-06-290 contributions on 2025-06-300 contributions on 2025-07-010 contributions on 2025-07-020 contributions on 2025-07-030 contributions on 2025-07-040 contributions on 2025-07-050 contributions on 2025-07-062 contributions on 2025-07-072 contributions on 2025-07-084 contributions on 2025-07-096 contributions on 2025-07-102 contributions on 2025-07-110 contributions on 2025-07-120 contributions on 2025-07-130 contributions on 2025-07-144 contributions on 2025-07-150 contributions on 2025-07-160 contributions on 2025-07-171 contributions on 2025-07-180 contributions on 2025-07-190 contributions on 2025-07-200 contributions on 2025-07-210 contributions on 2025-07-220 contributions on 2025-07-230 contributions on 2025-07-240 contributions on 2025-07-250 contributions on 2025-07-260 contributions on 2025-07-272 contributions on 2025-07-282 contributions on 2025-07-291 contributions on 2025-07-300 contributions on 2025-07-312 contributions on 2025-08-010 contributions on 2025-08-020 contributions on 2025-08-030 contributions on 2025-08-040 contributions on 2025-08-051 contributions on 2025-08-060 contributions on 2025-08-070 contributions on 2025-08-080 contributions on 2025-08-090 contributions on 2025-08-100 contributions on 2025-08-110 contributions on 2025-08-120 contributions on 2025-08-130 contributions on 2025-08-140 contributions on 2025-08-150 contributions on 2025-08-160 contributions on 2025-08-171 contributions on 2025-08-180 contributions on 2025-08-191 contributions on 2025-08-200 contributions on 2025-08-210 contributions on 2025-08-220 contributions on 2025-08-230 contributions on 2025-08-244 contributions on 2025-08-252 contributions on 2025-08-261 contributions on 2025-08-270 contributions on 2025-08-283 contributions on 2025-08-290 contributions on 2025-08-300 contributions on 2025-08-310 contributions on 2025-09-010 contributions on 2025-09-020 contributions on 2025-09-030 contributions on 2025-09-040 contributions on 2025-09-050 contributions on 2025-09-060 contributions on 2025-09-072 contributions on 2025-09-081 contributions on 2025-09-090 contributions on 2025-09-100 contributions on 2025-09-110 contributions on 2025-09-120 contributions on 2025-09-130 contributions on 2025-09-1424 contributions on 2025-09-150 contributions on 2025-09-1612 contributions on 2025-09-170 contributions on 2025-09-180 contributions on 2025-09-190 contributions on 2025-09-200 contributions on 2025-09-210 contributions on 2025-09-220 contributions on 2025-09-230 contributions on 2025-09-240 contributions on 2025-09-250 contributions on 2025-09-260 contributions on 2025-09-270 contributions on 2025-09-281 contributions on 2025-09-291 contributions on 2025-09-300 contributions on 2025-10-010 contributions on 2025-10-021 contributions on 2025-10-030 contributions on 2025-10-040 contributions on 2025-10-050 contributions on 2025-10-061 contributions on 2025-10-072 contributions on 2025-10-082 contributions on 2025-10-090 contributions on 2025-10-100 contributions on 2025-10-110 contributions on 2025-10-120 contributions on 2025-10-130 contributions on 2025-10-141 contributions on 2025-10-152 contributions on 2025-10-160 contributions on 2025-10-170 contributions on 2025-10-180 contributions on 2025-10-190 contributions on 2025-10-203 contributions on 2025-10-210 contributions on 2025-10-220 contributions on 2025-10-230 contributions on 2025-10-240 contributions on 2025-10-250 contributions on 2025-10-260 contributions on 2025-10-274 contributions on 2025-10-284 contributions on 2025-10-291 contributions on 2025-10-300 contributions on 2025-10-310 contributions on 2025-11-010 contributions on 2025-11-021 contributions on 2025-11-031 contributions on 2025-11-040 contributions on 2025-11-050 contributions on 2025-11-060 contributions on 2025-11-070 contributions on 2025-11-080 contributions on 2025-11-092 contributions on 2025-11-100 contributions on 2025-11-110 contributions on 2025-11-122 contributions on 2025-11-130 contributions on 2025-11-140 contributions on 2025-11-150 contributions on 2025-11-160 contributions on 2025-11-170 contributions on 2025-11-180 contributions on 2025-11-190 contributions on 2025-11-200 contributions on 2025-11-210 contributions on 2025-11-220 contributions on 2025-11-230 contributions on 2025-11-240 contributions on 2025-11-250 contributions on 2025-11-260 contributions on 2025-11-270 contributions on 2025-11-280 contributions on 2025-11-290 contributions on 2025-11-301 contributions on 2025-12-011 contributions on 2025-12-020 contributions on 2025-12-030 contributions on 2025-12-040 contributions on 2025-12-050 contributions on 2025-12-060 contributions on 2025-12-071 contributions on 2025-12-080 contributions on 2025-12-090 contributions on 2025-12-100 contributions on 2025-12-110 contributions on 2025-12-120 contributions on 2025-12-130 contributions on 2025-12-140 contributions on 2025-12-151 contributions on 2025-12-160 contributions on 2025-12-170 contributions on 2025-12-183 contributions on 2025-12-190 contributions on 2025-12-200 contributions on 2025-12-2123 contributions on 2025-12-221 contributions on 2025-12-230 contributions on 2025-12-240 contributions on 2025-12-256 contributions on 2025-12-260 contributions on 2025-12-270 contributions on 2025-12-286 contributions on 2025-12-299 contributions on 2025-12-3018 contributions on 2025-12-310 contributions on 2026-01-019 contributions on 2026-01-020 contributions on 2026-01-030 contributions on 2026-01-044 contributions on 2026-01-055 contributions on 2026-01-0621 contributions on 2026-01-070 contributions on 2026-01-081 contributions on 2026-01-090 contributions on 2026-01-100 contributions on 2026-01-110 contributions on 2026-01-120 contributions on 2026-01-130 contributions on 2026-01-140 contributions on 2026-01-155 contributions on 2026-01-160 contributions on 2026-01-170 contributions on 2026-01-181 contributions on 2026-01-191 contributions on 2026-01-200 contributions on 2026-01-210 contributions on 2026-01-220 contributions on 2026-01-230 contributions on 2026-01-240 contributions on 2026-01-251 contributions on 2026-01-260 contributions on 2026-01-277 contributions on 2026-01-288 contributions on 2026-01-2916 contributions on 2026-01-300 contributions on 2026-01-310 contributions on 2026-02-010 contributions on 2026-02-021 contributions on 2026-02-031 contributions on 2026-02-044 contributions on 2026-02-053 contributions on 2026-02-060 contributions on 2026-02-070 contributions on 2026-02-080 contributions on 2026-02-091 contributions on 2026-02-100 contributions on 2026-02-113 contributions on 2026-02-120 contributions on 2026-02-130 contributions on 2026-02-140 contributions on 2026-02-155 contributions on 2026-02-168 contributions on 2026-02-175 contributions on 2026-02-183 contributions on 2026-02-198 contributions on 2026-02-200 contributions on 2026-02-210 contributions on 2026-02-225 contributions on 2026-02-2311 contributions on 2026-02-244 contributions on 2026-02-250 contributions on 2026-02-262 contributions on 2026-02-270 contributions on 2026-02-284 contributions on 2026-03-016 contributions on 2026-03-024 contributions on 2026-03-031 contributions on 2026-03-046 contributions on 2026-03-0515 contributions on 2026-03-060 contributions on 2026-03-070 contributions on 2026-03-081 contributions on 2026-03-094 contributions on 2026-03-100 contributions on 2026-03-112 contributions on 2026-03-125 contributions on 2026-03-130 contributions on 2026-03-140 contributions on 2026-03-150 contributions on 2026-03-165 contributions on 2026-03-170 contributions on 2026-03-182 contributions on 2026-03-1913 contributions on 2026-03-206 contributions on 2026-03-210 contributions on 2026-03-224 contributions on 2026-03-233 contributions on 2026-03-244 contributions on 2026-03-257 contributions on 2026-03-260 contributions on 2026-03-270 contributions on 2026-03-284 contributions on 2026-03-299 contributions on 2026-03-306 contributions on 2026-03-3137 contributions on 2026-04-0123 contributions on 2026-04-020 contributions on 2026-04-032 contributions on 2026-04-040 contributions on 2026-04-055 contributions on 2026-04-067 contributions on 2026-04-078 contributions on 2026-04-088 contributions on 2026-04-090 contributions on 2026-04-100 contributions on 2026-04-110 contributions on 2026-04-124 contributions on 2026-04-1316 contributions on 2026-04-144 contributions on 2026-04-153 contributions on 2026-04-161 contributions on 2026-04-171 contributions on 2026-04-180 contributions on 2026-04-190 contributions on 2026-04-207 contributions on 2026-04-219 contributions on 2026-04-226 contributions on 2026-04-2321 contributions on 2026-04-2453 contributions on 2026-04-251 contributions on 2026-04-2626 contributions on 2026-04-2715 contributions on 2026-04-284 contributions on 2026-04-293 contributions on 2026-04-303 contributions on 2026-05-010 contributions on 2026-05-020 contributions on 2026-05-038 contributions on 2026-05-042 contributions on 2026-05-051 contributions on 2026-05-061 contributions on 2026-05-070 contributions on 2026-05-080 contributions on 2026-05-090 contributions on 2026-05-100 contributions on 2026-05-1120 contributions on 2026-05-128 contributions on 2026-05-1337 contributions on 2026-05-1426 contributions on 2026-05-150 contributions on 2026-05-160 contributions on 2026-05-178 contributions on 2026-05-1816 contributions on 2026-05-190 contributions on 2026-05-2023 contributions on 2026-05-217 contributions on 2026-05-220 contributions on 2026-05-230 contributions on 2026-05-240 contributions on 2026-05-258 contributions on 2026-05-2626 contributions on 2026-05-2729 contributions on 2026-05-2819 contributions on 2026-05-290 contributions on 2026-05-300 contributions on 2026-05-3121 contributions on 2026-06-0112 contributions on 2026-06-0213 contributions on 2026-06-034 contributions on 2026-06-0431 contributions on 2026-06-053 contributions on 2026-06-060 contributions on 2026-06-0723 contributions on 2026-06-0830 contributions on 2026-06-097 contributions on 2026-06-108 contributions on 2026-06-110 contributions on 2026-06-12
LessMore

This Website!

Anyone can build on AWS. But cost optimizing what you build without breaking functionality is the real proof of knowledge. This whole website (plus the underlying infrastructure and CI/CD pipelines) costs me $1.05 per month to run, despite using all of the AWS best practice tooling. And, it's brutally simple to maintain!

View Git-Ops project

Jarvis - Executive Summary Agent

One-shot containerized agent that delivers a daily AI-generated executive brief to Slack. Jarvis aggregates data from many sources, including AWS, GitHub, Gmail, Drata, and more, using a drop-in plugin architecture where new sources are easy to add. Each plugin can leverage per-plugin LLM inference via Groq with plugin-defined settings for customization.

View Jarvis project