GraphQL strategies to help you manage interactions between evolving systems more effectively.
Engineering
How to preview deployments with Kubernetes
Sometimes replicating your full stack environment locally is pretty hard. Orchestrating lots of microservices in a development environment and sharing demos can be tricky.
Making incremental changes and shipping fast is ideal. This is our default workflow for the vast majority of development but for some cases where we want
Engineering
Our journey with GraphQL and the trade-offs we've encountered along the way
At Jam, we initially chose GraphQL for our product due to its flexibility and ability to build lightweight and fast front-ends. However, as we’ve scaled, we have encountered challenges with GraphQL related to maintainability, debugging and monitoring.
Even within our engineering team, the jury is out on whether those
Engineering
Debugging a complicated chain of events that led to a bug
We built Jam to help you file bugs. But we’re not perfect! Here’s a quick teardown on one of our own bugs—a bug that affected some users during their first Jam install.
We’re writing this because we’re imperfect, and we think it’s a great
Engineering
Migrating from MongoDB to Postgres: Part 1
This is the first part of an upcoming series documenting our work in migrating databases from MongoDB to Postgres. We did this with zero incidents, having planned the changes over 6 weeks, and executed them in under an hour. We’d love to share our thoughts on how we approached
Engineering
Automating Chrome extension publishing with GitHub Actions
In the earlier days of Jam engineering, we did a few things that don’t scale. As one of those many things, we manually submitted this developer Chrome extension to the Chrome Web Store. This meant whenever we wanted to release newer versions of our extension, one of our engineers