newswangerd
Remote: Yes (preferred)
Willing to relocate: Yes
Technologies: Go, Python, Django, Ansible, Dart/Flutter, Docker, React, Envoy Proxy, REST, gRPC
Résumé/CV: available via email
Email: [email protected]
GitHub: https://github.com/newswangerd
I'm a principal level software engineer with a focus on architecture and design. I spent 8 years at Ansible (Red Hat) working on various Ansible web services (Ansible Galaxy, AWX, Gateway/Jewel) where I served at various points as a full stack engineer, technical lead and architect. During my last three years I designed the Ansible API Gateway, which is a project to unify all of the Ansible services (Controller, Automation Hub and Event Driven Ansible) under a common UI and API interface.
Last year I left Red Hat to find my fortunes as an independent developer. My main project is Digital Carrot (https://www.digitalcarrot.app/), which is a highly customizeable, cross platform screen time and focus app. The basic premise is that you block distractions (such as social media), until you complete a set of verifiable goals (such as walking 10,000 steps or physically spending 60 minutes at the gym). Digital Carrot has: fully end to end encrypted sync, a sandboxed plugin system for loading data to verify goals and cross platform support (mac, pc, android, iphone). All of this was built by myself, with no vibe/agentic coding, though I am currently in the process of re-writing the UI with AI as a means to learn how to use AI in a cost effective manner. If you've read this far you're probably wondering why I want a normal job again. Well, one of the things I've learned as an independent dev is that building an app is half the battle. The other half is marketing. Now, I want you to make an educated guess: do you think the guy that spent a year building an app to block social media wants to spend very much time on social media hawking his wares? If your answer was "no", then you might be smarter than me!
In summary I am generalist with a wide berth of experience that spans everything from building full stack web applications enterprise applications, large scale web services, consumer mobile applications, leading small (10 person) development teams, leading large scale organizational (200 person) initiatives and starting my own company. I believe that I am the perfect candidate for any company in entrepreneurial Hacker News orbit.
It's also includes historic weather patterns and has some simple modeling tools built into it that can help predict how well off grid, grid tied and hybrid solar systems will perform. So far I have found that it's predictions map very closely to what I've experienced on the ground with my solar array.
It's a screen time app/ app blocker that blocks distractions until certain programmable goals are met. For example:
- Block social media until you walk 10,000 steps
- Block Factorio until you physically go to the gym
- Block Netflix until you finish all your goals in todoist
The app is cross platform and available on everything (except Linux, which I'd like to change soon!).
Goals are all verified with real data from places such as your phone's GPS or fitness trackers. They can be programmed using a simple expression editor.
Right now I'm working on streamlining the plugin and goal system so that people can more easily write and share goals with one another!
I think we’re going to start seeing this happen more broadly across the industry. AI will get to a point where it becomes easy to clone any app or service. At that point software is no longer your moat. Your moat is going to be content, community and branding. This kind of makes me wonder if open source get even more popular. If software is no longer a moat, then you may as well release it for free and cash in on the goodwill and community.
My point here is that it is important to match the tech stack to the challenge you're facing. When I started thinking about how to solve this problem my first reaction was to design an overly complicated distributed message queue using PG Notify, Redis, Kafka or something along those lines. The key takeaway here is that I realized that I probably wouldn't end up with more than 1000 customers, so I just needed to design a system that could comfortably handle that level of traffic without much effort. If, by some miracle, my business goes crazy viral, I know that my cloud provider can probably handle up to 200,000 customers by just updating a slider in my dashboard, which is way more business than I want anyway.
Engineers love to fantasize about Google levels of scale, but that's just not realistic for a lot of services.
In the end, I decided to just go with the simplest solution possible. In my case it's just a barebones Go gRPC service that uses an in memory channel to send notifications between connected clients.
The reality is that this simple Go server will scale up to about 1000 simultaneously connected customers on about 2gb of RAM. I don't expect to have more than that many paying customers, and if I do I can always just throw a bigger VM at the problem.
Engineers love to over complicate things in the name of infinite scalability, when in reality you can save a lot of time and effort by just understanding the scope of the actual problem you're trying to solve. Fingers crossed that this will become an issue for me some day, but until then most of us just don't need to worry about it!
Using Go for Mobile Apps: A retrospective on a year of development with Gomobile
How Rockstar fit a city into 32 megabytes of PS2 memory [video]
I assume end to end encryption would help mitigate this. Breaking E2E encryption would require a client side update that could be hard to implement if the company has already gone belly up.
Ask HN: Is it possible to craft a privacy policy that perpetually protects users
Is it legally possible to craft a privacy policy for an app that prevents a company from loosening it later on if the app is sold or if the owner of the app decides to try and monetize data in the app?For context I am the developer of an app called Digital Carrot[1] that lets users create goals for themselves that are verified by data from connected services. For example someone might create a...
Firefox appears to be bulk removing extensions with no explanation
One problem I personally have here is that I write code as a way to reason through and think about a problem. It's hard for me to grasp the best solution in a space until I try some things out first.