Skip to content

Open nowPosted 162 days ago

Founding Product Engineer

veedma2 open roles

Pay
$160,000 – $200,000 a yearly
Where
United States
Work mode
Remote
Get the CV for this job

From $25 per CV, paid once. No subscription.

Your applicationOpen nowFounding Product Engineerveedma · United States
  1. YouYes, apply to this one.

  2. CV RocketCV written for this posting.

  3. 25 readersRecruiter, hiring manager, skeptic. Round after round.

  4. CV RocketApplied on veedma's own form.

The reply lands in your private mailbox

3×more interviews than doing it yourself with ChatGPT.

The clock on this job

Early applications get read.

11.8% of postings close within 7 days. Measured by our own scanner across the market.

Share of postings closed within
  1. 2.1%1 day
  2. 4.4%3 days
  3. 11.8%7 days
  4. 18.6%14 days
  5. 35.6%30 days
  6. 45.1%60 days
This job: posted 162 days ago

The posting

Veedma is a telehealth practice for men's hormonal and sexual health. We treat low testosterone, erectile dysfunction, and the symptoms men actually feel: libido, erection, energy, strength, and mood, in men 18 and up, fully online. Most low testosterone is secondary and reversible, so we find the cause first and stimulate the body's own production before resorting to TRT. Enclomiphene is the foundation; Tadalafil is co-prescribed when erectile or prostate symptoms coexist with low Free Testosterone. Testosterone replacement therapy is not a service we currently offer.

The platform is AI-native by default. Both founders code in Claude Code every day. Production code calls OpenAI's API from Python for the in-product features and content pipeline. Akute is the EHR, Stripe handles billing.

About the founders

You will work with both of us directly, every day. The CTO is the one reviewing your code.

Vladimir Kotlov, MD - Founder & CEO. Urologist by training (MD, 2014) with clinical experience in men's reproductive health. The clinical voice in every product call. (https://www.linkedin.com/in/vkotlov/)

Victor Kuznetsov - Founder & CTO. 20+ years in software engineering and AI/ML. Previously Co-Founder & CTO of Yva.ai (people analytics, acquired by Visier). Owns the Veedma platform end-to-end today and will review your code. (https://www.linkedin.com/in/wiltodelta/)

If the people you would be reporting to matters to you (it should), open both profiles before you apply.

You probably fit if

When you see a bug, a slow query, a missing tool - your hand is already on the keyboard. You don't wait for a ticket, a sprint, a spec review. You read the code, fix the thing, write the migration, and the PR is in flight before lunch. You're personally interested in men's health, hormone optimization, or longevity - the engineers who do their best work here are the ones who would use the product themselves. You don't need to be a Veedma patient, but you should be the kind of person who would consider becoming one.

What you will own

  • Patient-facing flows. Intake, lab upload, report delivery, messaging, payment.
  • Internal tools for the clinical team. Whatever turns the platform into a clinic - lists of who needs what next, draft-and-send workflows, the small admin screens that save the team a day a week.
  • Integrations. Akute, Stripe, Postmark, Fillout, ShipStation, Slack.
  • Spec to prod, end-to-end. Spec Monday, in production by midweek, watched in Sentry the same day. No handoffs.
  • The AI layer, both sides of it. Inside the product and the content pipeline: OpenAI API calls from Python that power the features and automations that benefit from an LLM. Inside the team: Claude Code skills and sub-agents the founders and clinician use to do their own work faster. You own and extend both.

Stack

  • Python (Flask) primary. Backend, async jobs, integrations, data pipelines, internal tools.
  • PostgreSQL
  • Celery + Redis for queues and scheduled jobs
  • Tailwind CSS + Flowbite, server-rendered from Flask templates. No SPA today.
  • Akute (EHR), Stripe, Postmark, Fillout, ShipStation, Slack as the live integrations.
  • OpenAI API called from Python for the in-product features and content-pipeline automations that benefit from an LLM. Choice of model is not religion either - we will switch providers when the trade-off changes.
  • Claude Code, custom skills, and MCP integrations are how the team works day-to-day.

This is the stack today, not a religion. We swap pieces when there is a real reason. We expect you to argue for changes, lead them, and own the cost of them. The wrong fit is "I only work with X" in either direction.

What we are looking for

  • 10+ years building production web apps end-to-end. Senior, hands-on. You have shipped features real customers used and paid for, and you have owned a system long enough to live with your own design decisions.
  • Healthcare is in your background. Most of those years were spent shipping production code at a healthcare, telehealth, EHR, digital therapeutics, pharmacy, or medical-device company. You know what PHI is. You have argued about HIPAA with a security team. You have hit an EHR API and lived to tell about it.
  • You want to stay in healthcare. This is not your "let me try something different from fintech" tour. When you describe what you want to build over the next 5 years, healthcare is in the answer without prompting.
  • Claude Code is your primary tool. Not Cursor, not Copilot autocompletes, not "I sometimes ask Claude". 6+ months of daily use, 4+ hours per day. You write skills, wire up MCP servers, compose sub-agents, and have a real CLAUDE.md in every repo you own. If you cannot describe your Claude Code workflow in concrete detail, wrong seat.
  • Strong Python. This is our primary language. Production Python at depth - typed code, async, packaging, profiling, real test coverage on the parts that matter. Not "I picked it up for a side project."
  • Ship across the stack daily. Frontend, backend, schema migrations, infra - whichever the task needs. You don't wait for a teammate to do the other half.
  • Real external integrations under your belt. At least one that mattered - payments, EHR, messaging, identity. You know what good error handling looks like, and what 3am pager pain teaches you.
  • You have shipped LLM features to real users, not demos. Production prompt engineering, evals on real data, retrieval, structured outputs, cost-and-latency budgeting - you know what each of these is and why each one bites. "I have used ChatGPT" does not count. "I built a cool demo" does not count.
  • Tooling is part of your job. If the internal dashboard you need doesn't exist, you build it. If the deploy is painful, you fix it. If the test suite is slow, you make it fast. You don't file tickets against yourself.
  • Tests on the parts that need them, not everywhere.

Nice to have

  • Direct experience with EHR systems (Akute, Healthie).
  • Worked at Hims, Ro, Hone, Maximus, or similar DTC telehealth.
  • Stripe billing experience beyond a basic checkout.
  • Flask, Peewee, or Celery in production.
  • Comfortable shipping server-rendered HTML (Jinja templates, Tailwind) when that's what the task needs - and equally comfortable arguing for a SPA, a different framework, or a different language when it earns its keep.

How we operate

  • AI-native, not AI-curious. Both founders code in Claude Code every day. The bar for "should this be a tool" is hours, not weeks. In-product LLM features (OpenAI API in Python) and team-side AI tooling (Claude Code skills) are both real, both maintained, and both yours to extend.
  • No queues, no tickets pointed at yourself. If you see it broken, you fix it. If a script would save you four hours a week, you build it Friday. We don't wait.
  • Never idle. Always something being tested, a signal we're chasing, a part of the product getting tighter. A week without something new shipped to patients or providers is a broken week.
  • Signals over opinions. What patients message us, what support tickets say, where the funnel breaks, what the error logs scream - that sets the backlog. The product changes when the data says so, fast.
  • Straight line to the founders. No layers. You're in the room (Slack, Linear, the weekly call) where product, clinical, and business decisions happen. You're expected to push back when you disagree.
  • Business-engaged or wrong seat. Not someone who picks up tickets and goes home. Someone who reads retention, has a view on what should be built next, and pings us at 9pm when production is off.
  • Async-first, US hours overlap. Code review by the team. No long-running branches. We ship every day at minimum.
From $25, paid onceGet the CV for this job

What happens when you press

One press. We do the rest.

  1. A CV for this posting

    Written against veedma's own wording, from every piece of relevant proof in your profile.

  2. 25 readers review it

    Recruiter, hiring manager, skeptic and more read every draft, round after round. You get the best round.

    The review screen in CV Rocket: how each CV was read, round by round.
  3. We apply on veedma's form

    Our application engine gets through the hardest forms there are. Where a question needs you, AI suggests the best answer. Don't want us applying from our IP addresses? Use our Chrome extension: we apply straight from your own browser.

    An application in CV Rocket: every answer filled in on the employer's form.
  4. Every reply, sorted

    veedma's answer lands in your private mailbox, and we classify it on arrival: interview, question, rejection.

    The CV Rocket inbox: each employer reply classified as an interview, an action or a rejection.
  5. Reply with AI

    AI helps you write the email, checks it and sends it. We show you whether the recruiter read it.

  6. The interview in your calendar

    Full integration with your calendar. The invitation goes straight in.

    An interview invitation in the CV Rocket inbox, added to the candidate's calendar.
Get the CV for this job

From $25 per CV, paid once. No subscription.

Why it works

3×

more interviews than doing it yourself with ChatGPT.

ChatGPT writes a CV and never learns what happened to it. We see every reply. For each CV we know:

  • How it was written, and how the review scored it
  • When we applied, and how long after the posting went up
  • Which posting, which company, which city
  • Who got the interview, and who heard nothing

That is how we know which CVs get called.

Get the CV for this job

From $25 per CV, paid once. No subscription.

The numbers game

More applications. More interviews.

Every application goes out with its own CV, written for that posting and paid once. Send enough of them and the law of large numbers finds you the job.

By hand5–10
With CV Rocket100
applications a day

Nearby

Live postings like this one

Same employer first, then the same role elsewhere.

Before you press

Straight answers

Get the CV for this job

From $25 per CV, paid once. No subscription.

What if my background isn't good enough?

We make the most of the background you have. The CV uses every piece of relevant proof your profile holds, and one of the 25 readers reads your whole profile and flags what the CV left out.

Do you really apply for me?

Yes, on the employer's own form, the hardest ones included. Where a question needs you, you answer it right there and AI suggests the best answer. Don't want us applying from our IP addresses? Use our Chrome extension: we apply straight from your own browser.

Is it a subscription?

No. You pay once per CV, from $25. Every application goes out with its own CV, written for that posting.

One job. One CV.
Paid once.

Pick the posting you want. We write for it, apply for you and catch the reply.

Get the CV for this job

From $25 per CV, paid once. No subscription.