Technology connections
Key Accomplishments
● Mentored, educated, and prepared five beginner-level students at Rmotr for Junior Developer positions, kickstarting their career changes.
● Project managed a hackathon team from statement of requirements through product demo, providing key updates, coordinating between team members across 4 time zones and 3 teams, and providing documentation and hand-off at each stage.
● Researched, wrote, tested, and trained team members on a triage process for our ETL system, allowing DevOps and Solutions Architects to self-serve resolutions on several critical gaps in our process while organizing long-term monitoring strategies to fill those gaps.
● Analyzed a process for returns management that utilized 12 staff members between 3 departments and 4 managers that previously used Google Docs and replaced it with a no/low code database application in 5 weeks, which tripled staff output, saved roughly $20,000/month, and increased customer satisfaction by 22%.
● Automated a manual process: from a manual process with proprietary software (physical devices) to a documented, reproducible, scalable process with automation on the software side.
● Avid Linux user for over 20 years, self hosting a variety of services (started as manual configuration, currently migrating from docker-compose to Kubernetes) with a small user base and minimal down time.
● Running private FaaS and AWS Api Gateway services for home and project automation
Target Roles:
DevOps Engineer
Site Reliability Engineer
Backend Software Developer
API Documentation Writer
Developer Resources Writer
Developer Support Engineer
Security Engineer
Interesting Project Scopes:
Internal tool development
CLI applications and automation
Open source development
Developer outreach
Containerization and automation
Version control for documents, configuration files, and manual SOPs
Current Role(s)
DevOps Admin, BioInteractive @ HHMI
Freelance Writer, How-To Geek @ Valnet
Libraries/Frameworks:
Django/Flask
FastAPI/Starlette
Requests, mock-requests
SQLAlchemy/Raw SQL
Pandas, Bokeh/Matplotlib
Click, Rich, tqdm
BeautifulSoup/web scraping
MyPy, Black, PyTest
Regex
pyautogui/desktop process automation
HTML/CSS/JS
Software/Concepts:
Debian/Ubuntu (~20 years)
Bash scripting, systemd services
Windows/MacOS
Postgres, MySQL/Maria, stored procedures, query analysis
Git/VCS
Docker/Containerization
RESTful API backends/clients/docs
AWS/GCP - VMs, buckets, logs, FaaS
Agile, Scrum, and Waterfall
Atlassian/Office/GDocs Suites
Slack/Discord/Teams
Soft Skills:
Mentorship
Leadership
Management
Documentation
Public Speaking/Presentations
Cross-discipline communication
C-Level communication
Client-facing communication
Traveling/Consulting
Strong interpersonal and relationship-building skills
In Progress:
CompTIA Security+ certification
Kubernetes deployments
Terraform configurations
Rust
Other Technical Skills:
Design/deploy private mesh network
Raspberry Pi cluster
Home Theater PC Building/Config
Various Media automation processes
My Journey
I've been interested in learning all my life, but the seed of that desire came from technology. It should be no surprise, then, that I became a self-taught developer.
While I started learning with JavaScript, I fell in love with Python and have been using that personally and professionally to solve problems for over 8 years. I've been a Backend Developer for about 4 years now, and working with APIs, databases and data models, and automation is something I enjoy doing greatly.
After working closely with DevOps team members, I've been learning about DevSecOps and Site Reliability/Platform Engineering principles, especially as they apply to the cloud. I've been an avid Linux user for over 20 years and have been running my own servers in some shape or form for over 15. I'm familiar with using Ansible and Docker to make running my services easy, and am now exploring Terraform/OpenTF and Kubernetes to automate more completely.
Aside from automation, which I've covered, there are a few other very significant things I'm passionate about in the tech world: open source, documentation, and iterative improvement. I don't think you can be a Linux user as long as I have been without understanding the important work of FOSS developers. Things like HeartBleed really showcase that we need to contribute from the private side and fund strongly from both private and public sides. So much of the basic infrastructure of the internet relies on FOSS and it's imperative to give back to maintain that infrastructure.
Documentation is a natural thing to be passionate about, not least of which because I am both a developer and a writer. Clearly documented processes are critical for lowering incident response times, long-term maintainability, and just general developer quality of life. It's no surprise that well-explained APIs - e.g. Stripe, GitHub, OpenAPI - get adopted quickly and stick around for longer. It also makes sense why declarative YAML files for tools - e.g. Ansible, Terraform/OpenTF, Docker Compose - are so well liked. They reduce complexity for version control, are easier to manage and deploy, and they are in some ways self-documenting. We're often taught as developers that we should clean up code as we revisit older sections, but we often don't document older code as we learn it. Swagger works great but it can only get you so far.
Iteration is a critical framework that extends beyond tech. It's so old that soliders have made the OODA loop second-nature, and you'll see many developers using our equivalent - REPL - in their daily lives as well. Iterative improvement applies at all levels; SDLC, sure, but also our self-teaching cycles, our relationship cycles, and our self-care cycles.
Technology does not exist in a vacuum, it's designed for use by people at the topmost layer (and often lower layers as well). It's especially important for those of us who are interacting so closely with machines that we remember our humanity. Having empathy for our team members and users is critical to not only delivering good products and experiences, but also for just being good humans and making contributions to society at large. Finding and making strong connections with folks we interact with is critical to survival, but also to flourishing as a person. It's especially important for those of us who are interacting so closely with machines that we remember our humanity. Using "conceptual frameworks" to do this is just a jargon-y way of saying we need to apply our core values and principles every day, and we can and should be inspired by the tools we see throughout each of those days.