Check out the visualization project that I built during my tenure at Splunk.
Satoshi Kawasaki
US Citizen • Japanese & Chinese speaker
A self-taught coder who went on to study rocket science, bringing 8+ years of expertise in enterprise software and client-facing roles.
based in San Francisco (Duboce Triangle)
🧑🏻💻 My portfolio
- Combating human trafficking using data scraping and Microsoft Azure Face with Global Emancipation Network.
- Detecting wildfires using IoT ground sensors alongside the Moraga-Orinda Fire District of CA.
- Tracking refugees and connectivity via Cisco Meraki devices with NetHope.
- Optimizing city tree maintenance using machine learning with San Francisco Public Works.
My other code and projects: GitHub
🔐 This site (DevSecOps)
| 🆓 Free | |
| Resume | HTML5 + SCSS |
| Style | Pico CSS |
| Icons | Font Awesome |
| Tooltips | Tippy.js |
| Hosting | Cloudflare Pages |
| Build tool | Vite |
| CI/CD | GitHub Actions |
| Object storage | Cloudflare R2 |
| AI |
Google Gemini
for research Microsoft Copilot for coding CodeRabbit for code review |
| 💵 Paid | |
| Domain name | Cloudflare Registrar |
Automated GitHub Actions workflows:
-
ci-cd.yaml: Executes the
CI/CD
pipeline on pull requests and branch merges to
main.
Click any job (e.g., ✅ misspell) for details or scroll horizontally to view all jobs.-
Security scanning (
codeql,syft-grype, andstackhawk) andlighthouseperformance audits are deferred during PRs to optimize pipeline speed and run only upon merging tomain.
-
Security scanning (
-
drift-detection.yaml: Runs daily
tofu planchecks to catch Cloudflare state drift and trigger GitHub issues. See Infrastructure as Code for details.
Automated Node.js scripts using Puppeteer (a headless Chrome browser automation library):
-
generate-resume-pdf.js: Renders the HTML resume as a PDF
during the
buildjob to keep public downloads in sync with source updates. -
generate-lighthouse-scores.js: Screenshots the
Lighthouse audit ring score
and passes the scores to this page during the
lighthousejob for every build.
Visual Studio Code IDE extensions (including Neovim)
- Prettier*
- Stylelint*
-
ESLint* including
eslint-plugin-security - HTML-validate*
Pre-commit hooks (view .pre-commit-config.yaml)
- Identical to the VS Code extensions above*
- Actionlint*
- Betterleaks
CI workflow jobs
- Identical to the pre-commit hooks above*
-
Every CI linting job (except
html-validate) uses ReviewDog wrappers to post findings as inline PR comments.
Secret scanner
- Betterleaks : Runs as a dedicated CI job to scan repository history
SBOM (view sbom.cyclonedx.json)
- Syft: Catalogs dependencies into a CycloneDX manifest
SCA
- Grype: Scans Syft's SBOM and reports findings via SARIF
- Renovate† : Proactive dependency updates via automated PRs
-
npm audit: Fails CI on high/critical
package-lock.jsonvulnerabilities
SAST
- Semgrep†: Lightweight, fast pattern matching for PR feedback
- CodeQL: Deep semantic data-flow analysis
DAST
- StackHawk: Scans live Cloudflare Pages preview deployments post-release
AI Code Review
- CodeRabbit†: Automated PR summaries and context-aware code reviews
Edge security & response hardening
- Enforces CSP, HSTS, X-Frame-Options, and protective headers across all endpoints to prevent XSS, clickjacking, and MIME-sniffing.
-
Managed through
OpenTofu rulesets
for the production domain (
hobbes3.com) and a repository _headers file for*.pages.devpreview environments outside the primary DNS zone.
Zero trust
-
Restricts preview deployments (
*.pages.dev) via identity-gated access (either a GitHub SSO login or an email one-time PIN) while keeping production public through OpenTofu rulesets. - Still allows StackHawk to scan the preview deployments via Cloudflare access service tokens.
GitHub repository secrets
-
Encrypts API tokens and securely injects them into GitHub Actions
workflows at runtime as environment variables.
-
CLOUDFLARE_API_TOKENfor deploying Pages and detecting configuration drifts -
AWS_ACCESS_KEY_IDfor Cloudflare R2 buckets AWS_SECRET_ACCESS_KEYHAWK_API_KEYfor StackHawk job-
CF_ACCESS_CLIENT_ID* for StackHawk to bypass Cloudflare zero trust CF_ACCESS_CLIENT_SECRET
-
terraform.tfvars
-
Defines sensitive variables for local OpenTofu runs while keeping
secrets out of the repository via
.gitignore.-
cloudflare_api_tokenfor runningtofucommands to modify Cloudflare configurations -
github_client_secretfor GitHub SSO in zero trust
-
This repository uses
OpenTofu to
declaratively manage all
Cloudflare infrastructure
for hobbes3.com and its subdomains (www,
resume, fec).
Declarative infrastructure (view main.tf)
- Defines Cloudflare resources, including Pages projects, custom domains, DNS records, edge security headers, zero trust, and redirect rules.
-
Stores the
terraform.tfstatefile in a private R2 bucket with native state locking enabled for security, state persistence, and concurrent execution safety.
Automated CI/CD (view drift-detection.yaml)
-
Runs a daily scheduled
tofu plancheck against Cloudflare API configurations to detect state drift and automatically open GitHub issues for remediation.
Lighthouse is Google's automated tool for measuring web performance, accessibility, and SEO.
Click the score above to view the latest
Lighthouse audit report. The
ring score and metrics are generated on every page build by a
Node.js script.
Captured on .
| Metric | Score | Description |
|---|---|---|
| FCP | 0/10 | Measures how fast the first text or image renders on screen. |
| LCP | 0/25 | Measures when the main page content has likely finished loading. |
| TBT | 0/30 | Measures page unresponsiveness during loading before user interaction. |
| CLS | 0/25 | Measures visual stability by tracking unexpected page layout shifts. |
| SI | 0/10 | Measures how quickly content is visually displayed during load. |
💁🏻♂️ My talks
Selected 9 times as a featured speaker for technical sessions across Splunk annual user conferences.
| 🗣️ "Splunking the 2018 Mid-Term Election" | ||
| .conf19 | slides | video |
| 🗣️ "Get those spreadsheets into Splunk" | ||
| .conf19 | slides | video |
| 🗣️ "Speed Up Your Searches!" | ||
| .conf19 | slides | video |
| 🗣️ "Splunking refugees with help from NetHope and Cisco" | ||
| .conf19 | slides | video |
| 🗣️ "Splunking the 2016 Presidential Election" | ||
| .conf17 | slides | |
| 🗣️ "Splunking to Fight Human Trafficking" | ||
| .conf17 | slides | |
| 🗣️ "Speed Up Your Searches!" | ||
| .conf17 | slides | |
| 🗣️ "Enhancing Dashboards with JavaScript!" | ||
| .conf15 | files lost 😔 | |
| 🗣️ "I Want that Cool Viz in Splunk!" | ||
| .conf14 | files lost 😔 | |
📸 My likes (gallery)
📃 My resume
Downloadable PDF available at resume.hobbes3.com
[email protected]
LinkedIn
GitHub
Satoshi Kawasaki
hobbes3.com • linkedin.com/in/hobbes3 • github.com/hobbes3
US Citizen • Japanese & Chinese speaker
Summary
A self-taught coder who went on to study rocket science, bringing 8+ years of expertise in enterprise software and client-facing roles. Seeking an individual contributor role to leverage technical depth and direct client engagement in solving complex enterprise problems.
Skills
Languages: Python, JavaScript / TypeScript, SQL, Bash / Zsh, Vim
Infrastructure: Linux, AWS, Docker, DevOps / DevSecOps, System Engineering
AI & Engineering: Full-Stack Web, Machine Learning, LLM, Prompt Engineering
Experience
Full-time caretaker to my father
- Maintained technical currency through hands-on development in DevSecOps and Generative AI, building CI/CD security pipelines, containerized microservices, and RAG architectures with local LLMs and vector databases.
- Selected 9 times as a featured speaker for technical sessions across Splunk annual user conferences.
Senior Engineering Manager
- Managed engineering execution for Splunk for Good, driving impact and sustaining 30%+ YoY growth in recipient organizations for 3 consecutive years.
- Led cross-functional teams to ensure high adoption rates and technical delivery across global social impact organizations.
Technical Lead
- Served as the global technical lead for Splunk for Good social impact initiatives, partnering with nonprofit, academic, and government agencies to architect and implement tailored data analytics solutions.
- Helped design and launch the $100M Splunk Pledge, a 10-year global initiative delivering software, training, and technical support to social impact organizations.
Professional Services Consultant
- Advised enterprise customers on custom analytics, complex dashboard design, and advanced data visualizations using full-stack web development skills.
- Achieved 100% billable utilization during the final 12 months, driven by direct client re-engagements and repeat requests.
Associate Services Consultant
- Specialized in cloud deployments and enterprise process automation using CA AppLogic and CA IT Process Automation Manager.
Education
B.S. in Aerospace Engineering

