Jim Weller

I have been in tech for over 20 years. I am all about enabling architects, developers, engineers, and their stakeholders to succeed through collaboration, communication, and strategic thinking. I have lately focused on platform engineering, integration platforms, developer platforms, developer experience and public cloud because I think they can have a big impact. I have done helpdesk, desktop, infrastructure, system administration, web design, software engineering, and architecture. I have been a people leader and an individual contributor in all those roles. I have worked in higher education, retail, finance, consulting, and software.

Spotlight Project

This POC of an internal developer platform uses modern tooling and a gitops approach. It shows the art of the possible for delivering a "walking skeleton." It also highlights reducing friction by centering the user experience around the developer and the application. Tools include Backstage, Crossplane, Kratix, ArgoCD, Datadog, Atlantis. (video)

About

I have seen enough failures and hype cycles to know that technology success is a socio-technical art, not an algorithm, playbook or a project plan. Programs, processes, paperwork, forms, templates, meetings, they are all proxies for culture, communication and outcomes.

I have learned that to be a good architect I need to remain a good engineer and strive to be a good leader. That is also my happy balance. I do not want to be a powerpoint ranger. I do not want to be a code-bot either. I want hands on keyboard, heart full of design and head in strategy.

I read books. The ones on design. The ones on code. The ones on neuroscience. The ones on business. The ones on leadership. The ones on teams. The ones on architecture. My guilty pleasure are the ones on space battles and the ones on fantasy realms.

As a kid, I liked programming as a puzzle. As I got older, I realized I liked the feedback. Then, as I matured, I realized I liked solving the big puzzles with smart people with feedback from other smart people. I am happy to sit at the back of the room and see everybody winning. I live for that moment when you clap your hands together in excitement because the spark of an idea taught you something. My favorite thing in the world, in all my activities, is when one discovery is the tipping point that opens a whole horizon of learning, where you can see the multiverse of knowledge possibilities.

I identify most with backend and as a generalist. I jokingly refer to myself as a handyman plumber. I have been loving Linux since Slackware in 1993. I have used DOS, OS/2, Linux, Windows, MacOS, Solaris, AIX, and VAX VMS. I was there for MacOS to OSX. I lived through the advent of Active Directory, the rise of virtualization, containers, public cloud, kubernetes, and LLMs. I have done source control with CVS, SVN, Bitkeeper and Git. I speak XML, JSON, YAML, HCL, SGML, XSLT and probably some dialects you have not heard of. I have written Go, SQL, bash, CMD, PowerShell, HTML, CSS, java, javascript, BASIC, VBScript, C, C++, assembly, C#, perl, python, php, lisp, TCL/TK, and other languages of recent antiquity. I have done ITIL, TOGAF, PMBOK, Agile, SCRUM, SAFe, LeSS, Kanban, and DevOps. I have built programs, projects, initiatives, epics, requirements, budgets, estimates, forecasts, financial analysis, SLOs, SLAs, RFCs, ADRs, RFIs, RFPs, CSFs, OKRs, OMs and KPIs. I have a lot of certifications. I wear a lot of hats. Like I said, I'm a handyman plumber.

As an architect I deal with risks and trade-offs. That is the job. If there is no risk, you do not need architecture. And every choice has trade-offs that need to be weighed. As a Cloud Architect, I design multi-account AWS and Azure organizations, cloud native applications, hybrid SaaS models, and help optimize cloud environments. I enjoy post-modern IT. I love clouds, containers, VMs, APIs, messaging, new-fangled databases, CI/CD/CM, observability and developer platforms. Give me a unix OS, browser, terminal, diagramming tool, editor, source control, and a cloud and I am a happy camper.

I want to move more into "data plumbing", working closely with data operations, data platform, data engineering, and data science teams. I want to be their plumber for data platforms, machine learning, and AI models.

I have an interest in AI/ML delivery and tooling, pragmatically. I'm deep into AI engineering at this point. I use multiple models at a time across multiple modes and apps. I've contributed to OSS projects. I have long running remote agents working on knarly problems. I have three primary use cases in this fast moving space:

  1. Analyst's Assistant: use tools to gather information like scraping APIs or spelunking clouds. I use this a lot when I walk into something big like a company's cloud environment or data pile like a ticket system.
  2. Pair Programmer: help reduce the toil of syntax. I use this a lot to work jira tickets to get all the details, write small scripts to do simple tasks or one-time tasks, and to work scoped tasks in big code bases.
  3. Spec Driven Development: manage long-running agents iterating toward a specification in a sandbox against a test harness. I use this a lot for migrations or to build larger projects. I iterate on the spec and the tests with each evolution. Or have it chew on a migration until tests pass 100%. It feels a lot like genetic algorithms, building survivable generation.

Colleagues have described me as someone who brings clarity, drives change, and makes tech approachable by blending broad knowledge with a collaborative, forward-thinking approach. I am also kind of fun in meetings.

Outside of work, you can find me hiking, camping, making/breaking/fixing in my workshop, baking, cooking, reading or just learning something new.

Fun fact: I grew up off-grid on a homestead. When I wanted to use my Commodore 64, I had to go outside and start the generator.

Portfolio

This is a highlight reel of impactful or cool projects I've worked on throughout my career. You will see the silhouette of the handyman plumber, the leader, and the strategic thinker.

Recent Work

This POC of an internal developer platform uses modern tooling and a gitops approach. It shows the art of the possible for delivering a "walking skeleton." It also highlights reducing friction by centering the user experience around the developer and the application. Tools include Backstage, Crossplane, Kratix, ArgoCD, Datadog, Atlantis. (video)

Davit is an AI fleet orchestration system for remote agents running on kubernetes pods written in Go. It lets an AI engineer coordinate a fleet of long running jobs in individual sandboxes. They can be managed via web, terminal, or in VSCode as a remote devcontainer via a custom protocol handler. (video)

CloudNetDraw is a tool for rendering Azure VNet architectures as Draw.io diagrams. I needed a tool to assess a very old and convoluted network. Kristoffer Hatland had some simple scripts. I rewrote it into a discovery and layout engine, converted them to a python package, and enabled it to be run remote as as a uvx package. Kristofer hosts a self-service site. CloudNetDraw is certified as Verified Microsoft Partner Solution (announcment)

It takes data to find value. I used the atlassian api, postgres, graphviz, and python to extract jira records and build a team-to-team model. The value delivery map helped a new CTO understand the value stream. It ultimately showed that one team was "Brent" ("the paint booth") and was central to all value. I did similar work for Azure, ADO, and Confluence.

This AI project won my company's Hackathon in the category "Most Likely to Be Adopted" among 130 competitors. It showcases two different ways to use natural language to interact with large datasets. It helped me find a couple $100,000/yr in AWS savings which is probably why it was "likely to be adopted." (video demo)

Architecture Diagram

Managing 100's of cloud accounts has challenges. This solution provides a centralized service for doing SQL queries of AWS infrastructure data against the entire fleet of AWS accounts in aggregate. It is useful for ad-hoc analysis and data pipelining. It is all immutable with AFT/CfCT and terraform.

Architecture Diagram

This project used terraform in a github pipeline to stand up an ephemeral windows server and deploy the repositorie's binaries. Each branch gets its own server for developer testing. The VM is destroyed on merge to main. There's also a version that round robins binaries to a farm of already running instances.

Architecture Diagram

The project is to demonstrate data streaming to a team working on a "SaaS Anywhere" project with agents running at customer sites, kind of like IoT. One hundred CloudWatch alarms emit event data to a simulator lambda that applies a health status with a 15% error error rate. It is streamed through API Gateway -> Lambda -> Kinesis -> OpeneSearch to be visualized in Grafana.

Older Work

Architecture Diagram

Customer engagement via SMS text has become standard. Marketing, security, CRM all want to use it. But no department can justify the bootstrap alone. The solution was a centralized platform where the message flow, availability, and compliance are baked in.

Architecture Diagram

Architecture 101 is "start with a list." The rest is attributes. Whether it is a portfolio, a SaaS app registry, a migration plan or an API catalog, it starts with a list. Here I built a list of developer tools and categorized them according to the CNCF landscape for planning purposes. Later, we added other measures to the list items.

Placeholder Image 3

The retail company used a lot of SaaS federation, mobile apps, and ecommerce site to provide services and engage with tens of millions of customers. Each integration was a bespoke batch job or API+DMZ proxy. It was chaotic. This API GW solution unified them under one OpenAPI spec while providing all the knobs and levers you would expect. This is comparable to about half way through the Netflix API evolution

Placeholder Image 4

Me and my budding architecture team adopted a tool to manage architecture data. We did a lot of custom coding and data modeling. We called it the enterprise architecture management system (EAMS). It could give you a picture of business processees, application architecture, and information architecture in a few clicks. It made federal audits a dream. We kept the overhead as light as possible by integrating the governance into existing programs.

Much Older Work

IT Knowledge Base (MOSS)

I built an IT knowledge base (pre-Confluence) that used a high availability sharepoint farm. Kerberos SSO, MSSQL cluster, searching, custom stylesheets. It was immutable and scripted long before that was a thing. It saw a lot of use.

AD Migration Site

We were migrating to a new Active Directory. Each computer and user needed to be migrated. This was a PHP web app for field techs to migrate a user while they were on-site migrating the computer. It transferred AD SID history, another LDAP directory, and tens of apps.

Statewide Network

A small business needed a low cost statewide network. This project used a small linux server in their central office and a tiny linux server in each remote branch. The sites were connected with IPSEC tunnels. And the mobile sales people could use a PPTP VPN to connect into the office. Each server was also the nat gateway and forward/reverse proxy.

Content Management Farm

I ran a content management engineering team that supported 1,000+ federated authors and 30,000+ pages. Each author was responsible for their own departmentor or topic site. We held different types of trainings, consultations, and conducted continous site reviews for performance, style book alignment, technical quality, and accessibility. It was a successful program and community.

MUCH MUCH Older Work

LFW

Linux Firewall on a Flopppy was a project back in the day to build a micro linux distribution that used ipchains (pre iptables!) to build a NAT gateway that could be used on older hardware without persistent storage.

MHS

Moose Habitat Survey was a project for field biologists in Alaska to measure Moose forage biomass as a way to estimate populations. I built a backpack for a bluethooth 3D modeler (Polhemus) and wrote a C# application to record the data collected.

DocBook

DocBook SGML and DocBook XML quickstarts were projects to use DocBook, an XML vocabulary to create documents in a presentation-neutral form that captures the logical structure of content. It harks back to GML from the 1960s. It is important for documents that outlive technology trends, like for government or academia. This is the beginnings of ideas like markdown.

LFW

Java Process Scheduler was a Java application and applet (ha!) that simulated and visualized the short term scheduler of an operating system. It generated data about response, wait, and turnaround time to understand the tradeoffs of various algorithms.

"You're still here? Go home. It's Over."
- Ferris Bueller -