Jeff Kao
๐ค SpeakerAppearances Over Time
Podcast Appearances
it's it the the rabbit hole goes goes very deep with with address validation so at that time we didn't really we were using an open source service for geocoding but there wasn't really a way for us to essentially ingest these ranges and validate addresses so that was sort of the main motivation for us to come up with something new and so
Our tech stack, you know, at that time didn't have any Rust.
We have some front end, you know, services written with React and Next and JavaScript.
And then our API server was written in TypeScript.
We had some like data processing jobs in Spark and Scala.
But nothing really, you know, statically compiled or, I mean, there's TypeScript, but more in the sense of like, you know, these things translate into some bytecode sort of like a JVM or into native instructions.
And we were sort of expecting...
We had more constraints about like, oh, if we want to build a service that does things like this and it overlaps so much with geocoding, we might as well just sort of replace the service because we had some operational issues with our existing geocoder, which we can talk about later.
And so there was sort of a motivation to use something that, whether it's like an external service, like something like Elasticsearch,
or, you know, having something like all in one.
Operationally, like we sort of got burnt by like having so many like external services that we were almost sort of motivated to have something that would just let us do everything on almost one package almost.
So we were considering a couple of different options.
And it's funny because at our company, we write like tech specs or essentially design documents before we sort of go into building some larger projects or like features or things that will have like big downstream impacts.
So like actually looking at back at the doc, we were considering a couple of languages.
So, and we sort of discussed the trade-offs there.
So we were thinking about Kotlin
And the thinking around there is that the Java and JVM ecosystem is very rich.
From my personal experience, I think Scala is very complicated.