I'm Roman, a software engineer based in Nashville, TN.
I have over 6 years of experience spanning various industries, including FinTech, real estate, and healthcare. Currently, I'm a principal engineer at Capital Rx, where I work on our invoicing, payments, and pharmacy claims routing systems.
I previously founded Realbid, a fractional real estate investment platform. Our mission was to democratize investing, making it accessible to all individuals regardless of their financial background. In just under six months since launch, we captured over $40,000 in investments and brought more than 500 users to the platform.
What I'm Working On
- I offer consulting and development services through Sorin Studio — I've successfully helped companies build and launch their products from "zero-to-one", provided technical leadership, and work hands-on to resolve critical performance and scalability issues. You can find more here.
- I help founders become more technical to build better products — I've worked with several post-exit founders to improve their technical skills or prepare them for a new venture, all of whom asked the same question: "What do I need to know to avoid making these mistakes again?". I work with them to understand their goals and bring them up to speed quickly, enabling them to contribute to product development, implement more effective hiring loops, and keep their engineering spend under control. If this sounds like you, let's chat!
- I'm building a document processing and data extraction platform — Automatically extract data from any document, email, or spreadsheet with high accuracy. Our mission is to turn any document into useful and actionable structured data. If you or your business are looking for solutions to reduce manual tasks and optimize business workflows, I'd love to chat.
- I've picked up Rust to build concurrent and performant services — It's a lot of fun! Programming Rust has been a great in-depth resource for getting up to speed quickly. When possible, I've also been finding the time to read through Designing Data-Intensive Applications.
Blog
Feb 1, 2024
Serializing OpenAI API Responses for Logging with Pydantic
When working with external APIs, I lean heavily on logging as much information I can for requests and responses. Sometimes, the solution is obvious, but can still be easy to miss!
Read moreApr 5, 2022
Using Django's JSONField? You probably don't need it. Here's why
If you find yourself using JSONField in Django, you might not know that you're really using JSONB. How can this impact your application?
Read moreMar 5, 2022
Deleting Git branches in bulk
Deleting several Git branches at once with normal Git deletion commands can become a real headache. Thankfully, there's an easier alternative to this.
Read moreFeb 1, 2022
Disabling the Tailwind input ring
If you've ever worked with Tailwind, you've probably come across an input ring – but it isn't always clear on how to remove this ring.
Read moreJan 27, 2022
Cherry-picking done easy
Have you ever needed to cherry-pick several commits between two branches, but ran into conflicts every time? I made this mistake myself – but cherry-picking doesn’t have to be hard.
Read moreDec 1, 2021
The Impact of Layout on User Experience: A Study
This paper documents a study that spanned over several months (September 2019 - April 2020), in which I performed a two-part analysis & experiment on the most popular site layouts and how user experience is affected.
Read moreNov 22, 2021
Hiding primary keys and database IDs using Hashids
We often don't want to show primary keys or model IDs to users, and doing so can be more harmful than you might think. As a solution, we can make "hashes" to mask IDs while still maintaining uniqueness.
Read moreOct 26, 2021
Zillow's confusing keyword UX
An exploration into Zillow's confusing keyword UX, and how listing sites can improve.
Read moreOct 16, 2021
Design for your developers, not just your users
Though it's impossible to be perfect, there are ways to improve developer productivity and establish a better foundation for how your apps are built. It starts by designing for your developers.
Read moreOct 9, 2021
My experience of moving from Laravel to Django
Before my current role, I spent most of my professional development career writing web apps in Laravel. I learned Laravel out of necessity after learning PHP and quickly grew fond of the framework, but later moved to using Django as my primary framework. Despite a simple transition, even some of the more basic concepts gave me trouble regarding terminology and patterns.
Read moreOct 6, 2021
Handling bulk update or create on Django models through filters
Recently, I came across a case where I needed to handle either bulk creates or bulk updates on a set of Django records within the same endpoint. Unfortunately, Django doesn't have a way of handling this "either-or" eloquently – but there's a feasible approach to this issue.
Read moreOct 3, 2021
Setting up Supabase with Next.js and Vercel
In this article, you'll learn how to connect your Supbabase project with your Next.js app hosted through Vercel. Within a matter of minutes, you'll have fully-fledged authentication, database, subscription support, and more.
Read moreSep 2, 2021
Using Hotjar and Google Analytics with Next.js to track behavior
As a developer, my go-to analytics tools are Hotjar and Google Analytics for both small, personal projects, and more complex applications. When I get a choice, Next.js is my favorite React framework – it offers server-side rendering (SSR), a growing and responsive community, and integrates easily with my favorite CSS framework, TailwindCSS.
Read moreNov 10, 2019
Integrating Gatsby, Tailwind, and Storybook
One of my current projects is dedicated to documenting and describing UX research that I’ll be conducting within the coming weeks. In building this project, I got the idea to use Tailwind, Gatsby, Firebase, and Storybook to get my hands dirty whilst still being able to build the app without too much effort.
Read more