google-site-verification=ELxx8BxZxh0FRvrpsz3X3djO2LXa4N0xnq_ADRpt8wA Dani Grant from Jam talking about Building Better Bug Reporting - Loving Legacy

Episode 27

Dani Grant from Jam talking about Building Better Bug Reporting

I talk to Dani Grant, the CEO and co-founder of Jam about their browser-based bug reporting solution and how it improves the bug-fixing experience for all those involved in reporting, triage and development. We discuss what challenges that Jam has faced in growing their product to 15k users with a small team of just 7 people and what the future might look like.

We talk about Jira, enterprise bug tracking and continuous engineering improvement when it comes to technical debt. We talk about working as a start-up and the challenges it brings when it comes to legacy architectural decisions as well as ways of improving code quality.

LINKS

JAM website

A link I like about MongoDB:) MongoDB is Web Scale

QUOTES

[01:23] "What we found holding us back is all of the miscommunication and back and forth. Bugs and fixes with engineers." [DG]

[02:11] "A screenshot is such a low-fidelity way to communicate something happening on the web" [DG]

[02:41] "with Jam, We try to get all of the relevant information for a developer all packaged into one link so they have all the information they need to debug right away, no back and forth needed. So it's one click to screenshot or record a video or instant replay, a bug that just happened and we grab a crop screenshot that you take plus the full screen. So all the contact you may have missed, um, plus console logs, fully inspectable network requests, and all the specs of the device and the browser and the operating system and even what your network speed was." [DG]

[04:36] "the first thing we wanted to do was just validate that this was not only a problem that we experienced as product managers at CloudFlare, but that this was a problem people experienced industry-wide" [DG]

[05:51] "we were really inspired. The story of Foursquare, the CEO bought himself a Learn PHP book, taught himself PHP to build the first version, and so we, we loved that story and, and wanted to emulate that." [DG]

[06:31] "we were very excited about the new technologies we could use to solve this problem. So we chose things like Kubernetes and GraphQL, and let me tell you that a couple years later, if there's ever any issue in our product, it is caused by one of the not boring technologies that we chose, like Kubernetes or GraphQL." [DG]

[08:08] "Boring old SQL comes to the rescue again" [RB]

[09:27] "Small team of seven. One thing we learned at CloudFlare is when something is important and you want it to go faster, it's actually better to have fewer people on it." [DG]

[10:51] "to be honest, the product managers, the support team members and the QA testers who are reporting bugs to engineers are just as frustrated. It's a communication problem, so it really has to be solved on both ends." [DG]

[12:36] "actually what we're seeing is that a lot of teams are sending jam to their customers and saying, we can't reproduce the bug you just reported. Please log it with this tool and then we'll be able to action it" [DG]

[18:07] "there's a lot of focus on engineering teams about how to, how to improve productivity, and there's a lot of talk about tooling. There's a lot of talk about collaboration with other teams. These things are awesome but I think that the bug reporting process has huge inefficiencies" [DG]

[20:02] "we realized we needed to build something that would improve the Jira experience from the inside out" [DG]

[24:00] "we feel like we're just getting started. There's so much to be done and I'm really excited about the future." [DG]

Transcript
Dani Grant:

there's a lot of focus on engineering teams about how to

Dani Grant:

improve productivity, and there's a lot of talk about tooling.

Dani Grant:

These things are awesome but I think that the bug reporting process has

Dani Grant:

huge inefficiencies and engineering teams, if they were to spend some

Dani Grant:

time improving that would see

Dani Grant:

Beyond the investment,

Richard Bown:

hi and welcome to Loving Legacy.

Richard Bown:

I'm your host Richard Bown, and this time I have with me Danny Grant from Jam.

Richard Bown:

Danny, thanks for joining me today.

Dani Grant:

Thank you so much for having me.

Richard Bown:

Absolute pleasure.

Richard Bown:

Now, perhaps you could, for our listeners, introduce yourself a little bit and tell

Richard Bown:

us what you do and who you do it for.

Dani Grant:

I am Danny.

Dani Grant:

I'm the co-founder and c e O of Jam.

Dani Grant:

We help people report bugs in a way to engineers that

Dani Grant:

is perfect for the engineer.

Dani Grant:

What's, what most people don't realize is that while most things in software

Dani Grant:

development has totally changed in the last 30 years, like is unrecognizable

Dani Grant:

to us in the nineties, the way we do bug reporting actually hasn't.

Dani Grant:

All, and it slows teams down and it's especially painful in

Dani Grant:

today's new remote global world.

Richard Bown:

Yeah, I'm really feeding that.

Richard Bown:

I'm nodding my head along as as you.

Richard Bown:

So you reached out to me because basically you said, I wanna come on

Richard Bown:

and, uh, you, you said you're a fan of the show, which is great to hear.

Richard Bown:

Um, so yeah, what gave you the inspiration for Jam and what was your

Richard Bown:

kind of journey, I suppose, for kind of getting to the situation you are now

Dani Grant:

Mike.

Dani Grant:

My co-founder and I started as product managers together at

Dani Grant:

CloudFlare and on CloudFlare.

Dani Grant:

We worked at, on a very interesting team.

Dani Grant:

We were this sort of this skunkworks team, and our job was to launch

Dani Grant:

net new businesses for the company.

Dani Grant:

So we had to move really, really fast and get great stuff out the door

Dani Grant:

right away, and time and time again.

Dani Grant:

What we found holding us back is all of the miscommunication and back and forth.

Dani Grant:

Bugs and fixes with engineers.

Dani Grant:

And in the in-person world, what we would do is we'd repro the bug on our

Dani Grant:

laptops and then we'd go run around the office until we found the engineer,

Dani Grant:

and then we'd give the engineer our physical laptop so they could debug

Dani Grant:

it there, because otherwise how can they see, you know, dev tools?

Dani Grant:

Um, but when the world went remote, uh, there was no way to do that.

Dani Grant:

And so that is why we started Jam.

Dani Grant:

We wanted to build the tool that we needed as product managers.

Richard Bown:

Okay.

Richard Bown:

Right.

Richard Bown:

So until then, yeah, either the, the laptop has to be there, or you could

Richard Bown:

copy paste, I mean, screenshotting a part of the application that you have now.

Richard Bown:

So Jam does that.

Richard Bown:

I understand.

Richard Bown:

So presumably before, that's another way that you could have made bugs

Richard Bown:

or you could have just screenshotted it, but it's just not as immediate.

Richard Bown:

is that, is that the idea?

Dani Grant:

A screenshot is such a low fidelity way to communicate something

Dani Grant:

happening on the web in cyberspace.

Dani Grant:

Uh, there's all this stuff happening in the background that the developer needs

Dani Grant:

that a screenshot does not encompass even.

Dani Grant:

Sometimes when people take screenshots, they don't even include

Dani Grant:

the relevant part of the page.

Dani Grant:

In the screenshot.

Dani Grant:

They include the error message, but the developer actually needs

Dani Grant:

what's around the screenshot.

Dani Grant:

Like what account are you logged in with?

Dani Grant:

What version of the software are you using?

Dani Grant:

What country are you in?

Dani Grant:

Like what is the language that is shown in like the experiments you're a part of?

Dani Grant:

Um, so with Jam, We try to get all of the relevant information for a developer

Dani Grant:

all packaged into one link so they have all the information they need to debug

Dani Grant:

right away, no back and forth needed.

Dani Grant:

So it's one click to screenshot or record a video or instant replay, a bug that just

Dani Grant:

happened and we grab a crop screenshot that you take plus the full screen.

Dani Grant:

So all the contact you may have missed, um, plus console logs, fully

Dani Grant:

inspectable network requests, and all the specs of the device and the

Dani Grant:

browser and the operating system and even what your network speed was

Richard Bown:

So you've been go going a while.

Richard Bown:

You've got plenty of users all over the place.

Richard Bown:

Um, My background is mainly in working in corporate land, and I know what it's like.

Richard Bown:

You got, everything's locked down, so how does it play in

Richard Bown:

that kind of scenario as well?

Richard Bown:

Is it a case if you have to be completely, fully open or

Richard Bown:

can you work behind firewalls?

Richard Bown:

Is there, is there even an on-premise solution that you offer?

Dani Grant:

there's no on-prem, but we do offer like advanced access controls

Dani Grant:

for organizations that need that.

Dani Grant:

And actually a lot of the.

Dani Grant:

People using JAM are at these large corporations because

Dani Grant:

the problem is exacerbated.

Dani Grant:

The more people you have on the team, the more countries

Dani Grant:

different people are working in.

Dani Grant:

Um, and, and the broader, the surface area of the product, which

Dani Grant:

more legacy companies just have a really broad surface area that

Dani Grant:

they've built over the last 20 years.

Dani Grant:

So an example of some of the companies using Jam are like

Dani Grant:

Dell T-Mobile, Autodesk, sort of these large corporations.

Richard Bown:

Okay, so backing up a little bit then.

Richard Bown:

So what got you interested?

Richard Bown:

So you like from a software engineering background in the first

Richard Bown:

place, what was your kind of path, I suppose, to where you are now?

Dani Grant:

I studied human computer interaction at NYU.

Richard Bown:

Oh, cool.

Richard Bown:

Nice.

Dani Grant:

And went from there to venture capital, became a vc.

Dani Grant:

Um, my co-founder is, uh, was an engineer turned pm and we met when

Dani Grant:

we were both PMs at CloudFlare.

Dani Grant:

So I bring the business side, he brings the engineering side, and

Dani Grant:

together we're tackling the problem.

Richard Bown:

Okay, cool.

Richard Bown:

How do you even start in a, from a product mindset, but

Richard Bown:

having technical understanding.

Dani Grant:

When we started Jam, the first thing we wanted to do was just

Dani Grant:

validate that this was not only a problem that we experienced as product managers

Dani Grant:

at CloudFlare, but that this was a problem people experienced industry wide.

Dani Grant:

And so having experience as PMs, we, uh, Said, let's, okay, let's

Dani Grant:

do a bunch of user interviews.

Dani Grant:

That's what we know how to do.

Dani Grant:

And so the first thing my co-founder and I did even before we quit our jobs to

Dani Grant:

start Jam, is we did 45 user interviews validating that this was a problem.

Dani Grant:

People faced companies big and small across the industry, um, and.

Dani Grant:

The emotion that people expressed on these calls, uh, was so palpable, uh, that

Dani Grant:

we knew we needed to solve the problem.

Dani Grant:

And actually, um, one of those first early user interviews tried to pay us and

Dani Grant:

set up a onboarding for his whole team.

Dani Grant:

And then we had to explain to him that there is no product yet.

Dani Grant:

We are just researching.

Dani Grant:

Um, so we really started from the product mindset, but.

Dani Grant:

Then we need to figure out, well, how do we build a product solution

Dani Grant:

to a problem that has not been solved yet with a product solution?

Dani Grant:

And both my co-founder and I, um, knew how to write code.

Dani Grant:

Um, he is a former mobile developer, so he took a React course

Dani Grant:

online to teach himself React.

Dani Grant:

And I was sort of a hobbyist developer, um, and had picked up some skills

Dani Grant:

and together we built sort of the first prototype of Jam just to

Dani Grant:

see if there were any legs there.

Dani Grant:

Um, we were really inspired.

Dani Grant:

The story of Foursquare, the CEO bought himself a Learn PHP book,

Dani Grant:

taught himself PHB to build the first version, and so we, we loved that

Dani Grant:

story and, and wanted to emulate that.

Richard Bown:

Yeah, because when you're launching a product from.

Richard Bown:

An engineering perspective, it's always about how, how we're gonna build it.

Richard Bown:

Um, and it's very difficult to kind of jump outta that mindset and say

Richard Bown:

no, rather than just exercising what we think is the, the important

Richard Bown:

muscle, which is building stuff.

Richard Bown:

How can we actually think about solving a problem ? And that's

Richard Bown:

seems to be the perennial.

Dani Grant:

A hundred percent.

Dani Grant:

And actually, you know, when we were early on the journey, we were very

Dani Grant:

excited about the new technologies we could use to solve this problem.

Dani Grant:

Um, so, and.

Dani Grant:

and, and so we chose things like Kubernetes and GraphQL, and let me

Dani Grant:

tell you that a couple years later, if there's ever any issue in our

Dani Grant:

product, it is caused by one of the not boring technologies that we

Dani Grant:

chose, like Kubernetes or GraphQL.

Richard Bown:

Yeah, exactly.

Richard Bown:

Yeah.

Richard Bown:

Non boring, I think is the, the operative words here because.

Richard Bown:

You have to think about scale, you gotta think about the future of your product.

Richard Bown:

So I think it's very sensible the approach you took, especially just learning,

Richard Bown:

um, a technical solution off the bat.

Richard Bown:

So do you still run on Kubernetes?

Richard Bown:

Is that a question I can ask or,

Dani Grant:

Still use Kubernetes, still use GraphQL.

Dani Grant:

Um, but it is, it is a constant conversation on the team.

Dani Grant:

One of the interesting things that I had not realized in our first weeks building

Dani Grant:

jam is that the technical decisions we made so early on before there was.

Dani Grant:

Team, uh, stayed for much longer than I would've imagined.

Dani Grant:

The last remaining of that is when I, when it was like weekend one and I built

Dani Grant:

a first prototype, I used Mongo DB because it's very easy, it's very flexible.

Dani Grant:

It's great for prototyping.

Dani Grant:

We ran on Mongo DB until a month ago, and it was causing scaling issues for

Dani Grant:

us at our scale because it's a great database and it's great for production

Dani Grant:

data for an app of a different type, but we just needed a sequel database.

Dani Grant:

Um, and so those queries were just taking so long.

Dani Grant:

And when we did that migration, gosh, immediately the app sped up three or

Dani Grant:

four times and it, it was awesome.

Dani Grant:

Users noticed it was.

Dani Grant:

anyway.

Richard Bown:

The, the Mongo DB hype cycle.

Richard Bown:

But it's interesting, isn't it though?

Richard Bown:

Yeah.

Richard Bown:

Boring old sequel kind of comes to the rescue again, so Yeah.

Richard Bown:

Obviously then you've got a legacy problem, right?

Richard Bown:

So you've got like stuff in MongoDB, you've gotta migrate it.

Richard Bown:

How did you cope with that?

Dani Grant:

Um, so two engineers took this on in our team.

Dani Grant:

, they spent six weeks, um, working on the migration they had and at, at the

Dani Grant:

time that they deployed the migration, they had a runbook of what to do.

Dani Grant:

They had practiced on staging, um, and they had a runbook of

Dani Grant:

what to do if things went wrong.

Dani Grant:

And they had, um, a list of scenarios that they thought could happen.

Dani Grant:

The whole migration took 20 minutes and there was not a

Dani Grant:

single bug report after, and.

Dani Grant:

It and watching.

Dani Grant:

I was on the slack huddle where the two engineers were during the

Dani Grant:

migration and they, they just, they worked with each other with such

Dani Grant:

respect and such like collaboration.

Dani Grant:

It was like a soccer team that's passing very well.

Dani Grant:

It's sort of practice for the bigger problems that may come along, and you're

Dani Grant:

learning how to execute on the smaller problems so that when you have to do

Dani Grant:

big and difficult things, you can, and I just felt like, okay, we did a big

Dani Grant:

and difficult thing together and, and.

Dani Grant:

and now we can do anything.

Dani Grant:

So it, that was a moment of pride.

Richard Bown:

And that was pretty recently.

Richard Bown:

Yeah.

Dani Grant:

That was one month and one day ago.

Richard Bown:

Okay.

Richard Bown:

Congratulations on that.

Richard Bown:

So how big is the team then now at Jam?

Dani Grant:

Small team of seven.

Dani Grant:

Uh, one thing we learned at CloudFlare is when something is important and you want

Dani Grant:

it to go faster, it's actually better to have fewer people on it, not more.

Dani Grant:

And so we really live by that.

Dani Grant:

We're very inspired by Instagram.

Dani Grant:

There are 13 people, they were 13 people at a billion dollar valuation.

Dani Grant:

Um, my dream is for a jam to be 13 people at a billion dollar valuation.

Richard Bown:

Okay.

Richard Bown:

So what does the future then look like?

Richard Bown:

So you're very excited to get almost to 15,000 users.

Richard Bown:

That's brilliant.

Richard Bown:

Are they all paying users?

Richard Bown:

Uh, how does the licensing model work?

Dani Grant:

we we're students of CloudFlare, so large, free tier.

Dani Grant:

Um, we love that.

Dani Grant:

We, we love that, uh, we can build something that everyone can use, um, no

Dani Grant:

matter their ability to pay and then build features on top that only companies need

Dani Grant:

and companies have the ability to pay.

Dani Grant:

Um, we are so determined to.

Dani Grant:

Bring bug reporting out of this sort of archaic manual, outdated phase that

Dani Grant:

it's in and change it, uh, modernize it, bring it to the 21st century of how we

Dani Grant:

do things in software development today.

Dani Grant:

Um, wherever there are bugs we.

Dani Grant:

trying to build product solutions for that.

Richard Bown:

So it sounds like yeah, you're very aligned then

Richard Bown:

with the developer experience.

Richard Bown:

I mean, obviously it's great from a product, um, experience as well, from

Richard Bown:

a, from a company's point of view, but the emotional words that you're using

Richard Bown:

there about kind of pain, it seems to be aligned very much with the things

Richard Bown:

that developers will feel when they are confronted with the bug report, which

Richard Bown:

doesn't have enough information in it.

Richard Bown:

Is that fair?

Dani Grant:

Uh, yes.

Dani Grant:

And to be honest, the product managers, the support team members and the QA

Dani Grant:

testers who are reporting bugs to engineers are just as frustrated.

Dani Grant:

It's a communication problem, so it really has to be solved on both ends.

Richard Bown:

Okay, so the fee, showing that feedback loop again,

Richard Bown:

which is the important part of any development or product process.

Richard Bown:

So what happens then with these?

Richard Bown:

Cause I've tried the tool out and I really like it.

Richard Bown:

Um, but I'm just on the free tier of course, but so what's the value add, I

Richard Bown:

suppose then for the, for the next stage?

Richard Bown:

What do you get?

Dani Grant:

Most of the value add, um, under the paid tier has

Dani Grant:

to do with access controls that companies of a certain size need.

Dani Grant:

We want to give the value add away for free, which is, spend less time

Dani Grant:

debugging for engineers, spend less time manually reporting bugs for PMs,

Dani Grant:

work together better as a productive, fast moving team for everyone.

Dani Grant:

Um, and then under the paid tier, we have advanced access controls,

Dani Grant:

privacy, security, um, that only corporations, uh, are really asking for.

Richard Bown:

Okay.

Richard Bown:

So yeah, that's the bit I'm interested in then.

Richard Bown:

So, cause I know there's a couple of sites, for example, won't

Richard Bown:

let you record so Google won't let you record stuff on it.

Richard Bown:

Is, or is that something that's configured within the tool itself?

Richard Bown:

How does that work?,

Dani Grant:

in the extension, we allow people to set all sorts of settings,

Dani Grant:

like, um, if they want to disable jam on any site, uh, for any reason or

Dani Grant:

if they want to do the opposite and enable it only for specific sites.

Dani Grant:

Um, engineers especially have all sorts of different preferences around

Dani Grant:

their browser and extensions that they use, and so we just try to accommodate

Dani Grant:

that and make everyone feel really like in control when they're using.

Richard Bown:

Okay.

Richard Bown:

But would this be suitable also for customers?

Richard Bown:

So would you.

Richard Bown:

Providing it to customers or would a, um, a solution provide it for customers?

Dani Grant:

When we started, Jam, we wanted to fix the internal

Dani Grant:

communication problems between like, Product support, QA and engineers.

Dani Grant:

But actually what we're seeing is that a lot of teams are sending jam to

Dani Grant:

their customers and saying, we can't reproduce the bug you just reported.

Dani Grant:

Please log it with this tool and then we'll be able to, um, action it.

Dani Grant:

And so we're really excited to see that happen, but definitely are excited

Dani Grant:

also in the future to build something more focused towards customers.

Richard Bown:

Okay.

Richard Bown:

And it integrates with other, other tools as well, so kind

Richard Bown:

of, can you use it with Jira or.

Dani Grant:

we integrate with all the major issue trackers.

Dani Grant:

So, for example, if your team uses Jira, we wanna make it really fast

Dani Grant:

to get all the relevant debugging information into a Jira ticket.

Dani Grant:

So Jira, Asana, GitHub, slack, uh, wherever you are reporting bugs, uh, we

Dani Grant:

want jam to make that faster and better.

Dani Grant:

We have this idealized.

Dani Grant:

Version of, of what might happen, which is like someone spots a bug,

Dani Grant:

creates a Jira ticket, engineer fixes it, but nine times out of 10,

Dani Grant:

that's actually not what happens.

Dani Grant:

Um, typically someone reports a bug and they want to get more information

Dani Grant:

before they create the Jira ticket.

Dani Grant:

So they put something sort of vague, um, into a Slack channel.

Dani Grant:

Like, um, login isn't working.

Dani Grant:

, the vagueness of any issue creates a lot of fear because it sounds like

Dani Grant:

a big deal without more details.

Dani Grant:

And so a lot of engineers will see that message and be like, okay,

Dani Grant:

I need to stop what I'm doing on and focus on the critical thing.

Dani Grant:

And because there was no sort of, um, orchestration, many engineers

Dani Grant:

will now stop what they're doing to focus on this versus being

Dani Grant:

like, one person picks it up as a.

Dani Grant:

From there, there's a lot of back and forth with the original bug reporters.

Dani Grant:

These engineers are trying to repro it on their machines.

Dani Grant:

They're not seeing it.

Dani Grant:

They're asking back and forth, what environment are you in?

Dani Grant:

What browser are you in?

Dani Grant:

What device are you using?

Dani Grant:

Um, like c can you send a screenshot?

Dani Grant:

And ultimately, um, if, if they're able to resolve it with that, great.

Dani Grant:

But then ultimately they usually need to hop on a call with the.

Dani Grant:

Bug reporter and everyone's busy.

Dani Grant:

So you're orchestrating schedules and maybe at the end of the day to

Dani Grant:

contact, switch back to this and get on a call with a bug reporter.

Dani Grant:

And then like, um, they share screen.

Dani Grant:

You have to help them like open up dev tools and click where it says console,

Dani Grant:

click where it says network and like guide them through something that's.

Dani Grant:

quite confusing, um, and reproduce the bug.

Dani Grant:

And at the end of the day, it could have been something like, oh, the person had

Dani Grant:

the wrong password, but that front end error wasn't bubbled up to the user.

Dani Grant:

So login wasn't broken, it's just a front end error was not bubbled up.

Dani Grant:

And so, and it's just the, and that's just one bug, and it's something that

Dani Grant:

could have been identified and fixed in five minutes and instead took

Dani Grant:

an afternoon for several engineers.

Dani Grant:

and for that to be the case in 2023 when we have amazing other technical tools

Dani Grant:

and software development has come so far.

Dani Grant:

Um, is, is, is bunkers.

Richard Bown:

Good word.

Richard Bown:

Um, yeah, I'll contend that a little bit because it depends where you work,

Richard Bown:

I would say as well, because sometimes.

Richard Bown:

You can't get a bug looked at by a developer without going via po.

Richard Bown:

You know, you can't look a a, a bug looked at even in the same day, week, or month.

Richard Bown:

No matter what it is, no matter how well it's reported, it's not re

Richard Bown:

because it isn't the process, right?

Richard Bown:

So sometimes it's a case of there will be a lot of information added to a ticket

Richard Bown:

maybe in, I don't know, ServiceNow, before it even gets to Jira, which will then have

Richard Bown:

to be translated into a separate tool.

Richard Bown:

So whilst I get that, it's great if everyone's moving at that kind of.

Richard Bown:

It sounds a little bit kind of chaotic, I'd say as well.

Richard Bown:

That kind of pace.

Richard Bown:

Then, then I can get there.

Richard Bown:

There's a real need for it there.

Richard Bown:

However, it might Yeah.

Richard Bown:

Where I've worked, it's kind of like you can't get something looked at a, a

Richard Bown:

developer because they're not available

Dani Grant:

the, the two things go hand in hand because of the intense amount

Dani Grant:

of time it currently takes engineers to solve even basic issues because

Dani Grant:

they're not given all the info up front.

Dani Grant:

Um, bugs are just taking longer to solve, which means you can solve fewer issues,

Dani Grant:

which means customers have to suffer with more issues in the product for longer.

Dani Grant:

And so by streamlining the process, you also are able to solve more

Dani Grant:

bugs, which is really exit.

Richard Bown:

Does it help you also categorize the type of bugs as well?

Richard Bown:

So is there anywhere or would that come in something like Jira or Azure,

Richard Bown:

Azure DevOps or something like that?

Dani Grant:

Oh, uh, this is something we want to build so much, um, which is.

Dani Grant:

, you use jam to record a bug right on the webpage.

Dani Grant:

So we have a lot more information than Jira has.

Dani Grant:

And so, uh, we've been thinking about ways we can help with de-duplication,

Dani Grant:

categorization, um, and also routing because a lot of the, um, inefficiencies

Dani Grant:

around bug reporting is like someone reports an issue and they just

Dani Grant:

like route it to the wrong team.

Richard Bown:

Um, anything that you can avoid to have de duplication,

Richard Bown:

especially in Jira, because that's what a lot of people's time is spent

Richard Bown:

doing, you know, is looking at either.

Richard Bown:

Content in Jira, which has not enough information, or it's something that has

Richard Bown:

been reported before or it's something that's been there for two years already

Richard Bown:

and should already been thrown away.

Richard Bown:

. Could you then also, um, Not just categorize, but also give like

Richard Bown:

a time series version as well.

Richard Bown:

Like kind of you, almost like an observability platform where you

Richard Bown:

could say these bugs are being pop, are popping up at certain times.

Richard Bown:

Is there any way that you can mine that information from the tool?

Dani Grant:

That's, that's so cool.

Dani Grant:

We're actually working on something related to observability, um, that

Dani Grant:

we'll announce in a couple weeks, uh, that I'm really excited about.

Dani Grant:

If the goal is give developers all the information they need upfront, then

Dani Grant:

doesn't that need to dig deep into the stack and, and help them see what the

Dani Grant:

error was across the infrastructure?

Dani Grant:

So we're working on something there

Dani Grant:

You know, uh, there's a lot of focus on engineering teams about how to,

Dani Grant:

how to improve productivity, and there's a lot of talk about tooling.

Dani Grant:

Um, there's a lot of talk about collaboration with other teams.

Dani Grant:

These things are awesome.

Dani Grant:

Um, but I think that the bug reporting process, uh, has huge inefficiencies and

Dani Grant:

engineering teams, if they were to spend some time improving that, um, would see.

Dani Grant:

Beyond the investment, like, uh, I, I just think it's, it's one of those neglected

Dani Grant:

areas that with a little bit of effort on, um, has a huge impact, um, both for

Dani Grant:

the speed and productivity, but also the collaboration and trust within the team.

Richard Bown:

Definitely.

Richard Bown:

But how do you fix that?

Richard Bown:

That's the thing.

Richard Bown:

I mean, because everything is so embedded, the way that we work things, we've,

Richard Bown:

the firms have spent a lot of money, billions, probably hundreds of billions

Richard Bown:

on digital agile transformations.

Richard Bown:

We've had Agile coaches, we have had Scrum, we've had DevOps, what all this

Richard Bown:

kind of stuff's been going on, and we ended up, we've got a fixed tool set.

Richard Bown:

You know, it is like this is the core of the problem.

Richard Bown:

We put things that put a sticky into Jira or into Azure, Azure, DevOps or

Richard Bown:

whatever, and then we forget about it.

Richard Bown:

So how do you kind of flip it around and.

Richard Bown:

A situation where people are kind of, yeah.

Richard Bown:

Cause I wanna say they're fast.

Richard Bown:

They're, they're solving bugs faster.

Richard Bown:

But that's kind of not the point.

Richard Bown:

We don't wanna have bugs in the first place.

Richard Bown:

We wanna have good software.

Richard Bown:

So how do you kind of flip it and like, not make it about bugs and

Richard Bown:

not make it about stacks of bugs, but make it about a good software?

Dani Grant:

It's, it's funny you say that, like the tools and processes are

Dani Grant:

stuck in place and, uh, we've already invested as an industry so much time and

Dani Grant:

effort and resources on, um, on Agile and, and these new practices in DevOps.

Dani Grant:

Uh, when we started Jam we started with a different solution to solve the same

Dani Grant:

problem, which we thought we were going to be able to replace some aspects

Dani Grant:

of Jira, um, with something better.

Dani Grant:

But what we found at that time is there was a lot of resistance to that because

Dani Grant:

it's like, well, you already used Jira, so why take a risk on something else?

Dani Grant:

It is good enough.

Dani Grant:

And so we realized we needed to build something that would improve the

Dani Grant:

Jira experience from the inside out.

Dani Grant:

Where at the, you know, whatever process you are using, um, to run your team, at

Dani Grant:

the end of the day, you get these tickets.

Dani Grant:

And the tickets are the things that you're working on.

Dani Grant:

And if the tickets are of low quality, uh, It makes the job much harder.

Dani Grant:

And so we wanted to build some, like something very lightweight anyone can

Dani Grant:

pick up and start using that would improve the quality of each one of these tickets.

Dani Grant:

Um, but what you're saying about it's, it's not about, uh, fix

Dani Grant:

fixing bugs so much as it is about having a great customer experience.

Dani Grant:

Um, . I, I completely agree.

Dani Grant:

Um, I think you have to do both.

Dani Grant:

As a, as a remote startup, we spend a lot of time thinking about how do

Dani Grant:

we move faster with high quality?

Dani Grant:

Because as a startup, speed is the biggest advantage we have against giants.

Dani Grant:

And so we really care about moving really fast and still delivering great product.

Dani Grant:

And so we've, we've figured out a couple things that work really

Dani Grant:

well for us, um, that I think could work well for other teams too.

Dani Grant:

Um, one is a culture of code comments.

Dani Grant:

, a lot of issues arise when an engineer is stepping into a file they have

Dani Grant:

never been in or a part of the code base that they're unfamiliar with,

Dani Grant:

and so they make a change without understanding what are the ramifications

Dani Grant:

across a complicated product.

Dani Grant:

But if, if there's a culture of code comments where engineers don't

Dani Grant:

approve PRS unless there's sufficient context given, uh, and each new part

Dani Grant:

of the code, um, that really helps engineers, uh, keep the quality.

Dani Grant:

And move faster because they can get context, um, really quickly when they

Dani Grant:

step into a new part of the code base.

Dani Grant:

Another is doing an on-call program.

Dani Grant:

Uh, we do it a bit differently than other teams.

Dani Grant:

Most on-call programs, there's an engineer who is expected to be

Dani Grant:

on-call in addition to whatever it is that they're currently working on.

Dani Grant:

We do it differently where when you are on call, you are only

Dani Grant:

on call, and so your job is to.

Dani Grant:

Make improvements that you want to see unless there is something

Dani Grant:

urgent that comes up or you need to help someone release some code.

Dani Grant:

Um, and so that way there's always one person on the engineering

Dani Grant:

team, which for us is meaningful.

Dani Grant:

It's 20% of the engineering team, um, that's working on sort of background

Dani Grant:

fixes, cleaning up technical debt.

Dani Grant:

And then the last thing is something we found is the.

Dani Grant:

There is a misconception about moving fast, which, uh, which people think

Dani Grant:

if you stop and take too much time to plan, you won't move very fast.

Dani Grant:

But the not moving very fast that we're afraid of is like

Dani Grant:

deadlines slipping by weeks.

Dani Grant:

It's not taking an extra day to plan.

Dani Grant:

and we found that if we spend about half to one day before starting to write

Dani Grant:

code on any project planning how it will work and give having a round of feedback

Dani Grant:

with the engineering team, what are some ramifications we may not have thought of

Dani Grant:

and half to one day at the end, cleaning things up, we found along the way, then

Dani Grant:

we don't have to stop and do a bunch of technical debt, clean cleanup later.

Dani Grant:

And that really helps us.

Dani Grant:

There will be bugs and having a streamline process to report and fix them is super

Dani Grant:

important, but also having practices that support that, um, is, is important too.

Richard Bown:

So would you describe then Jam or the mission of Jam then, as being

Richard Bown:

like kind of, not just supplementing the existing tools there, but hopefully

Richard Bown:

replacing them in some ways as well?

Dani Grant:

I mean, the.

Dani Grant:

We're, we're in love with the problem, not the solution, if that makes sense.

Dani Grant:

Um, and so, uh, we will do whatever it takes to modernize the communication

Dani Grant:

between all the different cross-functional teams of an organization and help

Dani Grant:

engineers fix and catch issues faster.

Richard Bown:

Well, I look forward to hearing about the journey as

Richard Bown:

well as you, as you go forward.

Richard Bown:

So sounds like it's been very exciting ride so far.

Richard Bown:

It's only gonna get more exciting.

Richard Bown:

So what are the plans for the next, so you've got something

Richard Bown:

exciting to announce soon.

Richard Bown:

Looking beyond that you've already touched on some potentially quite

Richard Bown:

exciting things for the future, so you're kind of, you have large ambitions.

Richard Bown:

Is it fair enough to say that?

Dani Grant:

Yeah.

Dani Grant:

Um, we.

Dani Grant:

Uh, we were talking as a team, uh, the other day and someone was

Dani Grant:

like, this, this is very ambitious.

Dani Grant:

And, and, and then we're like, yes, but everything we do is,

Dani Grant:

you know, needs to be ambitious.

Dani Grant:

Um, we feel like we're, I mean, we are just getting started.

Dani Grant:

There's so much to be done.

Dani Grant:

Um, and I'm really excited about the future.

Dani Grant:

We have, uh, a really special team.

Dani Grant:

Uh, they are awesome.

Dani Grant:

They care, uh, they work so well together.

Dani Grant:

Um, and, and they're so supportive of each other and I can't wait

Dani Grant:

to see what we can all do.

Richard Bown:

Awesome.

Richard Bown:

Well, I look forward to seeing it too.

Richard Bown:

Danny, thank you so much for joining me today.

Richard Bown:

It's been an absolute pleasure talking to you and best of luck in the future.

Dani Grant:

Thank you so much.

Dani Grant:

Thanks for having me on.

Dani Grant:

thank you for joining me today.

Dani Grant:

I hope you enjoyed this episode.

Dani Grant:

It was lots of fun to make.

Dani Grant:

If you would like to come onto Loving Legacy, then please

Dani Grant:

feel free to get in touch.

Dani Grant:

You can find me via social media bownrw on Twitter or via LinkedIn

Dani Grant:

or via my website, richardwbown.com.

Dani Grant:

I'd love to talk to you about anything to do with software delivery and or

Dani Grant:

something to do with legacy systems.

Dani Grant:

Of course.

Dani Grant:

Until next time, this is Richard Bown saying goodbye and good luck.

About the Podcast

Show artwork for Loving Legacy
Loving Legacy
What are legacy software systems and why are they so fascinating?

About your host

Profile picture for Richard Bown

Richard Bown

DevOps Engineer | Software Designer | Writer