Full-stack Engineer
Quick Summary
Full-Stack Engineer New York City HQ ᐧ Full time ᐧ On-site ᐧ R&D ᐧ $160K-$200K + meaningful equity Prior to Ekho, one of the largest retail segments in the world had no checkout button.
New York City HQ ᐧ Full time ᐧ On-site ᐧ R&D ᐧ $160K-$200K + meaningful equity
Prior to Ekho, one of the largest retail segments in the world had no checkout button. If you wanted to buy a vehicle online, the best you could do was fill out an “I’m Interested” form and wait for someone to call you back. Found the bike of your dreams at a dealership two states away? You were mostly on your own. Tax requirements, titling workflows, and registration rules vary by state and county. Most dealers didn’t sell across state lines at all—not because they didn’t want to, but because they had no reliable way to do it.
Now they can. A buyer finds a bike, clicks “Buy Now,” completes financing and insurance verification online, and gets it delivered to their door in a few days. The whole thing takes about ten minutes. And the dealer doesn’t have to be at their desk (let alone awake) for any of it.
The first time one of our dealers woke up to a completed overnight sale, they messaged us: “Oh my God, this is crazy. We just fulfilled a transaction while the whole team was asleep.”
We get messages like this regularly now, and they’re no less exciting than the first one was. What made it possible was 18 months of untangling a combinatorics problem disguised as county-specific titling and registration, and integrating with 50 DMVs that still prefer faxes to APIs. That foundation is built. Now we’re putting AI on top of it, expanding into cars, and building the transaction layer that works in-store as well as online.
One thing worth saying directly: Anthropic can’t ship something tomorrow that makes this company obsolete. The moat is the foundation beneath the code: the 50-state compliance framework, the DMV relationships, and the legal licenses we’ve secured. That’s not something you can prompt your way around. Unlike most startups right now, we’re not racing against the next model update.
Last month, Victor carried 80% of the load on our AI Sales Agent and shipped it to six paying clients in a single month, including an 83-dealer OEM network that required building an entirely new two-phase conversation architecture. The AI geolocates buyers, surfaces nearby dealers, then permanently locks the conversation to that dealer and rebuilds its entire system prompt with dealer-specific config, inventory, and personality.
What made it genuinely hard: the widget injects into third-party dealer websites via Shadow DOM—every site a unique snowflake of Shopify themes and custom JavaScript that breaks in novel ways. Inventory search had to handle fuzzy matching across inconsistent dealer data. The system prompt grew to 13 modular sections, each tracking conversation state across the full buyer journey. All of this was debugged live while onboarding paying customers.
With one more strong engineer, we would have parallelized client launches instead of serializing them, and shipped native calendar support, lead assignment routing, and richer tool support including trade-in estimations and service scheduling. The constraint was headcount, not ambition.
The harder infrastructure problem underneath all of it: our platform handles transactions where multiple entities interact with the same deal simultaneously: a seller of record, a delivery dealer, a lender, a buyer. Before we can operate on any piece of data, we have to know who’s asking, which entity they’re representing, and what role that entity is playing in this specific transaction. A user with read access to dealer A and write access to dealer B touching a transaction that involves both—what should they see? What actions should they be able to take? Efficient, secure, and user-friendly permissioning for that model is a problem we’re still working through, and it has implications across the entire platform: account and user management, UI components, API and data layer authentication, and core data architecture.
Rowan grew up in South Africa, where his dad owned a used car dealership. Chris grew up in Atlanta, and was close family friends with some of the largest dealer operators in the Southeast. They met at Stanford, went to see what good looked like at scale (Rowan at Duolingo, Chris at Meta), then went through YC determined to find the most overlooked problem in the largest industry they could. This one—a $2 trillion industry that couldn’t complete a sale online—was the one that stuck.
Bongi, our VP of Eng, has known Rowan since high school. He turned down several of Rowan’s ideas before finally saying yes to this one. That kind of conviction from someone who knows the founder well enough to say “no” is its own kind of signal.
We’re 34 people, mostly in our mid-to-late twenties, with backgrounds across Stanford, YC, BCG, Goldman, and Meta. Nine of us are engineers. We spend four days a week together in our Flatiron office.
Nadim has kept every laptop from every job he’s ever had. They’re now racked in a server farm in his apartment running AI agents (before that it was crypto). David edits a sci-fi publication online and curates the strangest stories you’ve ever read. Alexis is working on becoming a DJ and producer (his genre is deep house). Jon studied film and posts photos to Slack that make everyone else’s iPhone photography look like a crime. Rodrigo can find the Spanish speakers in any room in New York, which is its own kind of superpower.
Mike is our industry vet. He’s in sales, not engineering; but you’d never guess it from the Claude Code usage. He spent decades as an executive at Triumph, Piaggio, and Zero Motorcycles, and recently organized a motorcycle track day for the whole team because he found a free event and figured people would want to go. (They did.)
There’s a gong in the middle of the office that goes off without warning every time a sale closes. Engineering debates here are about architecture decisions, ownership boundaries, and what to name things. The naming convention debates alone have generated Slack polls with 15+ options, many of them so bad they’re good. The founders have never said “my way or the highway.” Engineers define what to build and why, not just how. The whole team has an unlimited Claude Code budget, and it’s not just an engineering thing. People across the company are shipping with AI.
You’re a strong engineer across the full stack: comfortable in React on a Tuesday and deep in backend architecture on a Wednesday. You don’t need someone to hand you a spec. You look at a problem, figure out what needs to be built, and build it.
You have strong product instincts. You care about what the thing feels like to use, not just whether it works. When you’re building a dealer-facing configuration UI, you’re thinking about the dealer sitting in front of it, not just the data model behind it.
AI is already integrated into how you work, not something you’re still figuring out. Victor shipped our entire AI Sales Agent to six paying clients in a month. That’s our bar.
You’re drawn to problems with real constraints. Regulated industries, legacy dependencies, systems that have to work across 50 jurisdictions—these things don’t frustrate you, they interest you. Debugging a Shadow DOM injection issue on a Shopify-themed dealer site while a client is waiting to go live just doesn’t rattle you
You want to define what gets built, not just execute someone else's decisions. Engineers here own problems end-to-end. If you do your best work when someone hands you a ticket, this probably isn’t the right fit. If you do your best work when someone hands you a problem, it might be.
You don’t mind long hours when the work is worth it. The team is in at 8:30; dinner gets ordered at 7 for whoever’s still here… and most days, most people are.
Stack: React, Node.js (serverless), Express.js, NoSQL
Tools: GCP, Firebase, Retool, Stripe, and various SaaS platforms
What We Offer
~1 min readAfter an initial screen with our recruiting team, you’ll have an intro call with Bongi, followed by a project walkthrough with Chris where you’ll dig into something you’ve built and talk through the decisions you made.
Then there’s a technical interview with a senior engineer on the team.
The onsite is where it gets interesting. You’ll have two technical challenges to work on, and they're deliberately different. The first: build something from scratch, with full access to AI tools. The second: debug and fix issues in an existing system, with AI turned off. We designed it this way because the job requires both knowing how to move fast when you’re building new things, and knowing how to reason through a system when the scaffolding isn’t there to help you.
After that, a systems architecture conversation, lunch with the whole team, and a chat with Rowan.
We move fast when we find the right person. And we respect your time enough to be honest if it's not a fit.
Location & Eligibility
Listing Details
- Posted
- February 21, 2025
- First seen
- May 6, 2026
- Last seen
- May 8, 2026
Posting Health
- Days active
- 0
- Repost count
- 0
- Trust Level
- 25%
- Scored at
- May 6, 2026
Signal breakdown
Please let ekho know you found this job on Jobera.
4 other jobs at ekho
View all →Explore open roles at ekho.
Similar Fullstack Developer jobs
View all →Browse Similar Jobs
Stay ahead of the market
Get the latest job openings, salary trends, and hiring insights delivered to your inbox every week.
No spam. Unsubscribe at any time.