Rebld is building Jenny, a personal assistant for every homeowner. Jenny is not a chatbot. It's a true autonomous agent that executes multi-step workflows across voice, text, and connected systems — helping homeowners manage everything from renovations to contractor coordination.Jenny is our voice-first AI that talks to homeowners, understands their projects, scans their rooms in 3D, generates scopes of work, and connects them with vetted contractors.
The iOS app is Jenny's primary interface — and it's where most of the product innovation happens. We're backed by HF0 (most selective accelerator in the world).This is not a chatbot. It’s a true autonomous agent that executes multi-step workflows across voice, text, and connected systems.We’re hiring a Senior Engineer to architect and build the core runtime powering voice-first, autonomous agents.
We're looking for an iOS Engineer to build and ship core features of the Jenny app. This is a hands-on role — you'll work directly on SwiftUI views, TCA reducers, real-time voice infrastructure, on-device MCP tooling, and in-app chat. You'll be building the native layer that sits between a homeowner and an AI agent that can see, hear, and act on their behalf.You will design and ship the agent systems that turn intent into reliable execution. This is a hands-on, foundational engineering role. You will work directly on the runtime, orchestration layer, and realtime voice stack. Strong preference for candidates in San Francisco.
Strong preference for candidates in San Francisco.
Voice-First Conversation UI: Real-time streaming transcripts, session lifecycle management, and a chat interface powered by LiveKit. The AI speaks, the user responds, and the app reflects it all — live.
On-Device MCP Server: The iOS app runs a full Model Context Protocol server, exposing 20+ tools to the AI agent over LiveKit RPC and data channels. When Jenny needs to take a photo, trigger a room scan, or navigate the UI — she calls a tool, and iOS executes it. You'll extend and maintain this system.
TCA Features End-to-End: Every feature is a TCA reducer with its own state, actions, effects, and dependency-injected services. You'll build complete features — from the reducer logic through composable navigation to the SwiftUI view layer.
In-App Chat: Rich message rendering with streaming AI responses, card-based interactions, conversation history, and real-time updates. This isn't a wrapper around a web view — it's a native, purpose-built chat experience.
AI-Integrated Workflows: Tool availability predicates that react to app state. Live context sharing with the AI over data channels. Session upgrade flows that bridge anonymous voice conversations into authenticated user sessions. The app and the agent stay in sync.
You ship fast, write clean state-driven code, and care about how things feel to use.We are building a realtime, interruptible, low-latency voice-native assistant. You will work on:
Required:
- 3+ years shipping production iOS apps with Swift and SwiftUI
- The Composable Architecture (TCA) — reducers, `@Dependency`, composable navigation, `@ObservableState`
- Modern Swift 6 concurrency — actors, async/await, structured concurrency, Sendable conformance
- Strict state-driven architecture — unidirectional data flow, no side effects in views, exhaustive action handling
- Strong UI/UX design principles — custom design systems, animations, gesture handling, adaptive layouts
- Attention to unit testing — Swift Testing framework preferred; dependency injection for testability, fake/mock service patterns
- Strong coding agent workflows — Claude Code preferred; comfortable with AI-assisted development as a daily tool
- Experience building in-app chat features — streaming messages, real-time updates, rich content rendering
- Experience with MCP on iOS — or strong interest in building on-device AI tool infrastructure
Nice to Have:
- LiveKit or WebRTC real-time audio/video experience
- RoomPlan, RealityKit, or ARKit experience
- Clerk SDK or similar auth provider integration
- Datadog or equivalent observability tooling (RUM, logs, crash reporting)
- WidgetKit, App Groups, or Keychain sharing across targets
- Firebase (analytics, push notifications, crash reporting)
- Campaign attribution and deep linking
- Early-stage startup experience — comfort with ambiguity, shipping fast, iterating on product
Reach out directly: scott@rebld.ai