HuaRenCa
Back to Forum
Community

Ich habe einen KI-Agenten gebaut, der sich für mich bewirbt – passt meinen Lebenslauf pro Stelle an, füllt die Formulare aus und wartet auf meine Zustimmung vor dem Absenden

rjhuantan
rjhuantan

2 months ago

Die Jobsuche hat Stunden am Tag gefressen, hauptsächlich durch Kopieren und Einfügen derselben Informationen in leicht unterschiedliche Formulare. Also habe ich einen Agenten gebaut, der:

  • offene Stellen auf Jobbörsen findet

  • meinen Lebenslauf für jede Stelle umschreibt und ein neues PDF erstellt

  • die eigentliche Bewerbung ausfüllt (Ashby, Greenhouse – Dropdowns, Comboboxen, die "Warum möchten Sie hier arbeiten"-Felder)

  • vor dem Absenden stoppt, damit ich jede Bewerbung überprüfen kann – es ist ein Assistent, keine Spam-Kanone

Gebaut mit Python + Playwright + einem LLM für die Formularfeld-Zuordnung. Der mit Abstand schwierigste Teil war der Umgang mit den unterschiedlichen Darstellungen der Formulare in den verschiedenen ATS.

Fragt mich alles zum Bau – ich bin neugierig, ob Leute hier ihm vertrauen würden, autonom einzureichen (ich tue es noch nicht).

4
16

Comments (4)

Your avatar
Sign in to comment
Emma Tcherkezian
Emma Tcherkezian2 months ago

Ich würde es auch nicht autonom einreichen lassen, zumindest nicht, bis das System langweilige Schutzmaßnahmen gegen Nebenwirkungen hat.

Die sinnvolle Grenze ist: Der Agent kann eine Bewerbungsmappe vorbereiten, aber das Einreichen ist eine separate privilegierte Aktion.

Einige Dinge, die ich hinzufügen würde, bevor ich ihm mehr Volumen anvertraue:

  • eine Quittung pro Bewerbung aufbewahren: Job-URL, Unternehmen, Rollen-ID, generierter Lebenslauf-Hash, verwendete Antworten, Zeitstempel und ob sie eingereicht wurde

  • den generierten Lebenslauf/die Antworten mit einem Basisprofil vergleichen, damit seltsame halluzinierte Erfahrungen vor der Überprüfung sichtbar sind

  • jede externe Schreiboperation nach Möglichkeit idempotent machen: dasselbe Job/Unternehmen-Paar nicht erneut einreichen, es sei denn, es ist ausdrücklich erlaubt

  • Felder hart sperren, die nie erfunden werden sollten: Staatsbürgerschaft, Arbeitserlaubnis, Gehalt, Behinderung/Veteranenstatus, Standort, Verfügbarkeit

  • Screenshots oder DOM-Schnappschüsse der endgültigen Überprüfungsseite vor dem Absenden speichern, da ATS-Formulare unübersichtlich sind und manchmal erforderliche Felder/Status verstecken

  • aggressiv drosseln und deduplizieren, damit es nicht zu versehentlichem Spam wird

Der Teil, bei dem ich am misstrauischsten wäre, ist nicht das Ausfüllen von Textfeldern. Es ist die Feldinterpretation: Dropdowns wie "arbeitsberechtigt", "Sponsoring erforderlich", "bereit umzuziehen" oder Knockout-Fragen, bei denen eine falsche Zuordnung echte Konsequenzen hat.

Daher denke ich, dass Ihre Wahl "vor dem Absenden stoppen" die richtige Produktform ist. Der interessante nächste Schritt ist wahrscheinlich eine Überprüfungs-Benutzeroberfläche, die die Herkunft jedes ausgefüllten Feldes zeigt: Quelle aus meinem Profil, abgeleitet aus dem Lebenslauf, generiert aus der Stellenausschreibung oder erfordert menschliche Eingabe.

meisan
meisan2 months ago

Die ATS-Formularverarbeitung ist wirklich der schwierigste Teil, und die meisten, die solche Systeme bauen, unterschätzen, wie schlimm es werden kann. Greenhouse allein hat je nach Unternehmenskonfiguration etwa 4 verschiedene Muster zur Formularwiedergabe. Das hast du anscheinend auf die harte Tour herausgefunden.

Der Mensch im Kreislauf vor dem Absenden ist die richtige Entscheidung, nicht nur ethisch, sondern auch praktisch. Automatisch eingereichte Bewerbungen lesen sich anders, der Ton ist falsch, die Antworten auf "Warum möchtest du hier arbeiten?" sind immer zu glatt. Recruiter fangen an, das zu bemerken.

Eines würde ich dir jedoch ans Herz legen: Die Anpassung des Lebenslaufs pro Stelle klingt gut, aber überprüfst du tatsächlich die Ausgabe, bevor sie rausgeht? Denn LLMs schreiben Aufzählungspunkte selbstbewusst um, die technisch korrekt, aber subtil falsch in Bezug auf deine Erfahrung sind. Wenn du das Ausfüllen des Formulars genehmigst, aber den Lebenslauf nicht jedes Mal erneut liest, ist das die Lücke.

Der Teil, über den ich als Nächstes nachdenken würde, ist, was passiert, wenn ein Unternehmen ein weniger bekanntes ATS oder ein benutzerdefiniertes Portal verwendet. Das sind je nach Branche wahrscheinlich 30 % der Stellen, und dein Agent scheitert einfach still oder überspringt sie. Diese Abdeckungslücke wird mit der Zeit wichtiger, wenn du dies auf mehr Stellen ausweitest.

Ich bin neugierig, wie du die PDF-Generierung handhabst. Viele Lebenslauf-zu-PDF-Pipelines sehen gut aus, bis ein Recruiter sie in einer bestimmten Version von Acrobat öffnet und die Formatierung zerbricht.

rjhuantan
rjhuantan2 months ago

Im Grunde verwende ich Chromium, um maßgeschneiderte Lebensläufe basierend auf eingegebenem HTML zu erstellen.

sanqi
sanqi2 months ago

Die Stopps vor dem Einreichen sind die wichtige Designentscheidung. Bewerbungen sind genau die Art von Arbeitsablauf, bei dem Agenten Zeit sparen können, aber die endgültige menschliche Überprüfung verhindert, dass es zu Spam oder Falschdarstellung wird.