MARK MIRCHANDANI: Modernizing traditional workflows requires
building Cloud First solutions.
Join us in historic downtown Austin, Texas,
as we talk to SADA Systems about their cloud architecture
and how they've built Atom.
[MUSIC PLAYING]
So let's talk about Atom.
What does the architecture look like for Atom?
OLEG SHALYGIN: Atom's architecture's very robust.
Everything is built on Google Cloud Platform.
We're leveraging Kubernetes engine
for all of the different microservices,
and there's a various array of portals within Atom.
Each portal may have three or four various types
of microservices that back that infrastructure.
It gives us the flexibility of specifying
the right tool for the job, which means we can say, hey,
this data is very relational, very specific in the way
that it's laid out.
We can back that with a CloudSQL database.
Whereas other data within Atom is very non-relational
and dynamic based on whoever the client may be
and what asset class they have.
So we can specify that database to be a NoSQL solution
hosted on MongoDB Atlas.
Specifically, we have dataflow jobs
where we pull data in from all various DOTs that we work with
or different agencies, and they have data today in there
as a reserver or the ArcGIS server
that we pull from and then real time display within Atom.
And so that whole experience is more or less
seamless through Google Cloud Platform.
MARK MIRCHANDANI: So what other tools inside of Google Cloud
are you using?
OLEG SHALYGIN: So we use almost the full gamut, specifically
around logging, tracing, a lot towards developer productivity,
so that we can be agile enough to respond
to the demands of the customer.
So we're pushing code very regularly
on a weekly, almost bi-weekly, basis.
And for us to be able to do that, we
need the platform to do a lot of the heavy lifting
in terms of automation, in terms of security
best practices, the Command Center, threat detection,
you name it.
We're leveraging the tools to help boost developer
productivity.
And that's our big win on Atom, is enabling everybody
on the team to be comfortable with the platform
and proficient at provisioning these services.
MARK MIRCHANDANI: Yeah, you talked a little bit
about Kubernetes being kind of the cornerstone
of a lot of this architecture.
Why Kubernetes?
OLEG SHALYGIN: So Kubernetes gives us the availability
to scale based on demand, both horizontally and vertically.
So we're not running hundreds of hundreds of VMs
at 10% utilization.
We're able to utilize our resources very effectively,
which ties directly into the pricing models
that we offer these DOTs.
We can be very competitive because we
are optimizing our consumption.
And so where that plays a big role is we have periods of time
throughout the day where we have a high amount of traffic
and load, specifically around our download and offline
consumption.
So in the traditional sense, somebody
will go out and perform a bridge inspection.
Now, before they go out, they realize, hey,
I'm not going to have cell connectivity in this location.
So what they do is they download everything
that they need to do on the job, site and then
they work fully offline.
So when they regain connectivity,
obviously, all of those updates come back to the application.
We have a robust pipeline with Pub/Sub and what have you,
but the actual services themselves
need to scale very rapidly to that demand.
Because, as you can imagine, the end of the day
is when all of the inspectors come back to their hotel rooms,
they regain connectivity, and it's
eight plus hours worth of work now getting
pushed over to our application.
So the ability to respond to that demand
has been very critical, and that's
the primary reason why we use Kubernetes engine for that.
MARK MIRCHANDANI: So you mentioned
developer productivity earlier.
Has Google Cloud helped you with making sure
that your developers are more productive while working
on Atom?
OLEG SHALYGIN: Yeah, so developer productivity
has drastically increased since we've adopted Google Cloud
Platform and really started leveraging the full gamut.
We can tie-in resources, such as logging and tracing,
into these intuitive dashboards that
can give a holistic view of the application
to our development team.
We no longer need very specialized resources
that specialize in building these dashboards
or knowing some outside tooling that they
can tie into a pipeline or CI/CD environment.
Whereas, now our developers can get back
to writing code quickly and efficiently.
And that's essentially the gamut of what we use today,
and we continue to use things like Cloud Run to offload
some of our nightly jobs, Crons, and what have you.
MARK MIRCHANDANI: So it sounds like Atom
was built with a very Cloud-First
Architecture in mind.
When you are implementing this, were there
any things that you wish were different in Google Cloud?
OLEG SHALYGIN: Yeah, so when we first started the product,
Identity Platform wasn't a thing.
And now it is.
Ideally, we would like to encompass everything
within Google Cloud Platform.
It gives us true visibility.
We don't need to go to numerous systems and applications
to see where we stand in terms of identity.
It would be ideal if it was all within one platform, which
is what our goal has been.
So we use Okta today and, ideally, we'd
be leveraging Identity Platform.
MARK MIRCHANDANI: Well, thank you so much, Oleg,
for coming in and telling us about how SADA built
these solutions in the cloud.
OLEG SHALYGIN: Thank you.
MARK MIRCHANDANI: Thanks for joining us,
and stay tuned for more customer interviews on Stackchat.
[MUSIC PLAYING]