Independent

·

2026

Job Search

(working title)

A more considered way to find jobs, complete applications and keep track of what happened next, in one private iPhone app.

var(--variable-xx3pn9UkA)
var(--variable-xx3pn9UkA)

Role

Product design & development

Timeline

2026

Team

Solo, with AI-assisted development

Platform

iOS / Search / Workflow

Overview

One app for the whole job search

My own job search involved two awkward routines. I used targeted searches to find roles on companies' applicant tracking systems, then moved between each application form and a clipboard app holding my CV, links, details and repeatable answers I didn't need to tailor. A post about searching those systems through Google sharpened the discovery idea, and I began Job Search to bring the whole workflow into one iOS app shaped around how people actually apply. I defined the product, designed its interface and visual language, and built it natively for iOS. AI coding tools handled much of the implementation; the product and design decisions were mine.

Direct from employers

Roles read from company job boards, not another aggregator

Assisted applications

Your saved answers offered on each employer's form, for you to check

Honest tracking

An application is recorded only when you say it was sent

Challenge

The search, the forms and the follow-up lived in different places

A job search is a demanding workflow spread across job boards, company sites, application forms and whatever notes you keep. Finding roles, entering the same details again and again, and remembering what you actually sent are separate chores, and keeping track of the search can eclipse the work of finding the right role. I was living that workflow myself, which made every point of friction concrete.

How could I make a job search feel focused and navigable without turning it into another noisy productivity system?

Approach

From discovery to a confirmed application

Bringing the application kit to the real form

The app keeps a person’s CV, contact details, portfolio links and reusable answers close to where they’re needed. Apply opens the employer’s own page inside the app, and an Assist panel reads the fields it can identify and offers to fill matching answers. Individual answers can be inserted or copied when a form needs more care, and people can create their own custom fields for form questions the starting set doesn’t already cover.

Every employer form is different, so I designed a partial-match workflow with review and manual control, rather than pretending one button can complete every application. The person checks the form and submits it to the employer themselves.

Job Search: Assist on the employer's own form, drawing on saved answers. From a vacancy to the kit: job detail and saved CVs
Left Assist on the employer’s own form, drawing on saved answers. Right From a vacancy to the kit: job detail and saved CVs.


Finding roles without building another jobs platform

The first concept relied on search queries and a service to gather results. During development I found that many company job boards publish structured vacancies through public endpoints, so I moved discovery to those direct sources. The app reads supported company boards into a local index and lets people search, filter, save jobs and follow searches. People can add a company by name or board link when it isn’t already included.

Job Search: Localised: the feed in English, German and Japanese, with Japanese listings, not just a translated interface
Localised: the feed in English, German and Japanese, with Japanese listings, not just a translated interface.


A bundled starting index makes the feed useful on first launch while its sources refresh in the background. I extended the work to boards and job data in other regions, including European employers using Personio and Japanese employers using HRMOS, which went well beyond translating the interface. The index is curated from supported boards, and people can add the companies they care about most.

Job Search: A feed read straight from company boards, and adding a board. Search, and saved searches that alert
Left A feed read straight from company boards, and adding a board. Right Search, and saved searches that alert.


Tracking what actually happened

Opening a vacancy or starting its form isn’t the same as applying. When someone leaves an unfinished application, the app asks whether they sent it, plan to return or chose not to apply. That small question keeps the application record useful without guessing at an outcome the app can’t observe.

Job Search: diagram of the application flow, from opening the employer form and Assist to the Did you apply? question and its three answers
Opening a form isn’t applying: where the app can’t see what happened, it asks.


A quiet calendar grid shows when applications were sent across the last six months. It offers perspective on a search without turning daily applications into a streak or a competition. Saved roles, application states and search alerts help people return to the opportunities that matter.

Job Search: What actually happened: an application record and the quiet six-month grid
What actually happened: an application record and the quiet six-month grid.


Giving the work a visual language

I adapted the warm paper, expressive colour and card language I developed for Soleil to make a demanding task feel more approachable. The bright cards give the app character, while a consistent facts panel keeps location, pay and employment type easy to scan. I gave salary and perks a deliberate hierarchy and carried the colour identity through light and dark appearances. Job Search came together while I was completing a full redesign of Soleil. Because that design language was already mature, the new product went from idea to a working app very quickly, and I refined the two side by side so improvements in one fed into the other. Reuse still had its limits: the job card had to answer this product’s own scanning needs.

Using the app across discovery and tracking, I found a simple fix: a job’s card should keep its colour as it moves into Saved or Applications. People remember a role partly by how its card looks, so a card that changed would leave them wondering whether it was the one they applied to. Keeping it consistent preserves that recognition wherever the job appears.

Job Search: A job keeps its colour as it moves from Saved into Applications
A job keeps its colour as it moves from Saved into Applications.


Testing assistance against real forms

Many employer systems parse an uploaded CV and pre-fill parts of the application form. In my own applications, that meant some fields were already filled before Assist ran, and Assist didn’t account for it. I changed it to fill only the fields that are still empty, leaving what the employer’s system had entered for the person to check. The design has to respond to the form that’s actually there, including fields it cannot fill.

Privacy and reach

Searches and board data are handled on the device, and personal application records and saved answers sync through the person’s private iCloud account, with stored CVs in iCloud Documents. The app requires no separate account and has no backend of its own. I prepared the interface and App Store presentation for the UK and US, and in German, Spanish, French and Japanese, ready for launch.

Build

Private, backend-free and built on public job boards

Job Search is built in SwiftUI with SwiftData, syncing application records and saved answers through the person's private iCloud account, with CVs stored in iCloud Documents and no app-owned backend. Adapters read public job-board endpoints from company applicant tracking systems, including Personio and HRMOS, into a local index that is seeded for a fast first launch and refreshed in the background. Employer forms open in WebKit, where an assist script identifies fields and offers matching answers for the person to review. StoreKit handles the Pro tier.

SwiftUI

SwiftData

iCloud

ATS endpoints

Foundation Models

01

Direct, not aggregated

Public job-board endpoints and a local index, instead of building another jobs platform.

02

Assist, never submit

The app offers matches; the person reviews the form and sends it to the employer themselves.

03

A record you can trust

Leaving a form asks what happened, so starting an application is never mistaken for sending one.

Outcome

A working product shaped by real applications

Job Search is launching on the App Store in October 2026. I've used it for real applications, from finding a role through the employer's form to recording what happened next. The working product combines direct board discovery, reusable answers with human review and an application record that waits for confirmation. It brings those stages into one calm, private app.

Discovery at the source

Company job boards across regions, searchable and followable in one local index.

The application kit

CV, links and reusable answers matched to real employer forms, with review built in.

Honest tracking

An explicit applied-status choice and a quiet calendar of applications sent.

A shared visual language

Soleil's warm, expressive system adapted for a demanding task, in light and dark.

Status

In development · TestFlight · Planned App Store launch October 2026

In development · TestFlight · Planned App Store launch October 2026

Reflection

An interface shouldn't claim what it can't know

Opening a form isn't applying, and an app that pretends otherwise ends up with a record nobody trusts. The small "Did you apply?" question is the kind of decision I look for in any workflow product: where the system can't observe the outcome, it should ask rather than guess. An accurate record pays off later: the same roles are often reposted months apart and across several job boards, and a trustworthy history is what stops someone applying for the same job twice.

Create a free website with Framer, the website builder loved by startups, designers and agencies.