Score a job with no stored text on its own page, and show the real screen in the README

This commit is contained in:
feder-cr committed 2026-11-05 12:19:53 +01:00
1 parent 8804a31ffd
commit 290de45e4d
8 files changed
+434 -13

No files matched your search

+2
View File
@@ -14,6 +14,8 @@
- A CV that cannot be written fails that job alone, and the others in the selection still go.
- A database of your own, named by `database` in `aihawk.yaml`, can no longer make AIHawk read a file on your computer: a posting whose address is not `http` or `https` is left out of a search. The published database already left those out.
- A full disk while the job index downloads says the disk is full.
- A job whose source published no text is scored on the text of its own page where that can be read, which also finds postings that have closed.
- The README shows real captures of the screen.
- A setting of the wrong type in `aihawk.yaml` is one plain line instead of a traceback.
- The send check knows more languages' send words, and no longer refuses "Confirm email address", "Complete your profile" or "Send code".
+4 -10
View File
@@ -14,17 +14,11 @@ aihawk-env/bin/pip install git+https://github.com/feder-cr/Jobs_Applier_AI_Agent
aihawk-env/bin/aihawk resume.pdf
```
The resume can be anywhere on your disk: a PDF, a `.docx` or a text file. A scanned PDF has no text to read; export it with text, or save it as `.docx`. The list below is a mockup with invented data, not a capture.
The resume can be anywhere on your disk: a PDF, a `.docx` or a text file. A scanned PDF has no text to read; export it with text, or save it as `.docx`. Captured from a test search, with an invented CV:
```
AIHawk Ada Rossi · Python Engineer, Backend Developer · Milano, Italy [scoring 12/40]
┌───┬───────┬───────┬──────────┬─────────────────────────┬──────────┬────────┐
│ │ Score │ Apply │ Company │ Role │ Location │ Status │
│ ● │ 4.8 │ auto │ Acme │ Senior Python Engineer │ Milan │ │
│ │ 4.5 │ auto │ Beta │ Backend Developer │ Remote │ sent │
│ │ 4.1 │ link │ Gamma │ Python Developer │ Rome │ │
└───┴───────┴───────┴──────────┴─────────────────────────┴──────────┴────────┘
```
![The list of jobs, best first, with their scores](docs/demo-list.svg)
![One job: its score, gaps and reasons](docs/demo-job.svg)
The first time, AIHawk asks for an [OrcaRouter](https://orcarouter.ai) key and keeps it in `~/.aihawk/key`; after that, `aihawk` alone reopens your list. To change the key, edit or delete that file, or set `ORCAROUTER_API_KEY`, which wins over the file. If OrcaRouter refuses a key from the file, AIHawk forgets it and asks again.
+200
View File
@@ -0,0 +1,200 @@
<svg class="rich-terminal" viewBox="0 0 1580 879.5999999999999" xmlns="http://www.w3.org/2000/svg">
<!-- Generated with Rich https://www.textualize.io -->
<style>
@font-face {
font-family: "Fira Code";
src: local("FiraCode-Regular"),
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
font-style: normal;
font-weight: 400;
}
@font-face {
font-family: "Fira Code";
src: local("FiraCode-Bold"),
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
font-style: bold;
font-weight: 700;
}
.terminal-850988250-matrix {
font-family: Fira Code, monospace;
font-size: 20px;
line-height: 24.4px;
font-variant-east-asian: full-width;
}
.terminal-850988250-title {
font-size: 18px;
font-weight: bold;
font-family: arial;
}
.terminal-850988250-r1 { fill: #e0e0e0 }
.terminal-850988250-r2 { fill: #686868;font-weight: bold }
.terminal-850988250-r3 { fill: #c5c8c6 }
.terminal-850988250-r4 { fill: #646464;font-weight: bold }
.terminal-850988250-r5 { fill: #1a1a1a }
.terminal-850988250-r6 { fill: #646464 }
.terminal-850988250-r7 { fill: #0a0a0a }
.terminal-850988250-r8 { fill: #656565 }
.terminal-850988250-r9 { fill: #585858;font-weight: bold }
.terminal-850988250-r10 { fill: #b0b0b0;font-weight: bold }
.terminal-850988250-r11 { fill: #333333 }
.terminal-850988250-r12 { fill: #515151;font-weight: bold }
</style>
<defs>
<clipPath id="terminal-850988250-clip-terminal">
<rect x="0" y="0" width="1560.6" height="828.5999999999999" />
</clipPath>
<clipPath id="terminal-850988250-line-0">
<rect x="0" y="1.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-1">
<rect x="0" y="25.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-2">
<rect x="0" y="50.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-3">
<rect x="0" y="74.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-4">
<rect x="0" y="99.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-5">
<rect x="0" y="123.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-6">
<rect x="0" y="147.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-7">
<rect x="0" y="172.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-8">
<rect x="0" y="196.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-9">
<rect x="0" y="221.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-10">
<rect x="0" y="245.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-11">
<rect x="0" y="269.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-12">
<rect x="0" y="294.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-13">
<rect x="0" y="318.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-14">
<rect x="0" y="343.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-15">
<rect x="0" y="367.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-16">
<rect x="0" y="391.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-17">
<rect x="0" y="416.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-18">
<rect x="0" y="440.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-19">
<rect x="0" y="465.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-20">
<rect x="0" y="489.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-21">
<rect x="0" y="513.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-22">
<rect x="0" y="538.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-23">
<rect x="0" y="562.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-24">
<rect x="0" y="587.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-25">
<rect x="0" y="611.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-26">
<rect x="0" y="635.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-27">
<rect x="0" y="660.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-28">
<rect x="0" y="684.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-29">
<rect x="0" y="709.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-30">
<rect x="0" y="733.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-31">
<rect x="0" y="757.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-850988250-line-32">
<rect x="0" y="782.3" width="1561.6" height="24.65"/>
</clipPath>
</defs>
<rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1578" height="877.6" rx="8"/><text class="terminal-850988250-title" fill="#c5c8c6" text-anchor="middle" x="789" y="27">AIHawk</text>
<g transform="translate(26,22)">
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
<circle cx="44" cy="0" r="7" fill="#28c840"/>
</g>
<g transform="translate(9, 41)" clip-path="url(#terminal-850988250-clip-terminal)">
<rect fill="#333333" x="0" y="1.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#333333" x="12.2" y="1.5" width="939.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#333333" x="951.6" y="1.5" width="597.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#333333" x="1549.4" y="1.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#202020" x="0" y="25.9" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#202020" x="48.8" y="25.9" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#202020" x="134.2" y="25.9" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#202020" x="219.6" y="25.9" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#202020" x="512.4" y="25.9" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#202020" x="1073.6" y="25.9" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#202020" x="1390.8" y="25.9" width="146.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1a1a1a" x="1537.2" y="25.9" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="0" y="50.3" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="48.8" y="50.3" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="134.2" y="50.3" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="219.6" y="50.3" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="512.4" y="50.3" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="1073.6" y="50.3" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="1390.8" y="50.3" width="146.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1a1a1a" x="1537.2" y="50.3" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1a1a1a" x="0" y="74.7" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#1a1a1a" x="48.8" y="74.7" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1a1a1a" x="134.2" y="74.7" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1a1a1a" x="219.6" y="74.7" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#1a1a1a" x="512.4" y="74.7" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#1a1a1a" x="1073.6" y="74.7" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#1a1a1a" x="1390.8" y="74.7" width="146.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0a0a0a" x="1537.2" y="74.7" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="0" y="99.1" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="48.8" y="99.1" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="134.2" y="99.1" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="219.6" y="99.1" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="512.4" y="99.1" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="1073.6" y="99.1" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="1390.8" y="99.1" width="146.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0a0a0a" x="1537.2" y="99.1" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#333333" x="0" y="123.5" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#333333" x="48.8" y="123.5" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#333333" x="134.2" y="123.5" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#333333" x="219.6" y="123.5" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#333333" x="512.4" y="123.5" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#333333" x="1073.6" y="123.5" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#333333" x="1390.8" y="123.5" width="146.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#0a0a0a" x="1537.2" y="123.5" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="0" y="147.9" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="48.8" y="147.9" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="134.2" y="147.9" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="219.6" y="147.9" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="512.4" y="147.9" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="1073.6" y="147.9" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#161616" x="1390.8" y="147.9" width="146.4" height="24.65" shape-rLine truncated
<g class="terminal-850988250-matrix">
<text class="terminal-850988250-r2" x="12.2" y="20" textLength="939.4" clip-path="url(#terminal-850988250-line-0)">AIHawk&#160;&#160;Ada&#160;Rossi&#160;·&#160;Python&#160;Developer,&#160;Django&#160;Developer&#160;·&#160;Milan,&#160;Milano,&#160;Monza</text><text class="terminal-850988250-r3" x="1561.6" y="20" textLength="12.2" clip-path="url(#terminal-850988250-line-0)">
</text><text class="terminal-850988250-r4" x="48.8" y="44.4" textLength="85.4" clip-path="url(#terminal-850988250-line-1)">&#160;Score&#160;</text><text class="terminal-850988250-r4" x="134.2" y="44.4" textLength="85.4" clip-path="url(#terminal-850988250-line-1)">&#160;Apply&#160;</text><text class="terminal-850988250-r4" x="219.6" y="44.4" textLength="292.8" clip-path="url(#terminal-850988250-line-1)">&#160;Company&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r4" x="512.4" y="44.4" textLength="561.2" clip-path="url(#terminal-850988250-line-1)">&#160;Role&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r4" x="1073.6" y="44.4" textLength="317.2" clip-path="url(#terminal-850988250-line-1)">&#160;Location&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r4" x="1390.8" y="44.4" textLength="146.4" clip-path="url(#terminal-850988250-line-1)">&#160;Status&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r3" x="1561.6" y="44.4" textLength="12.2" clip-path="url(#terminal-850988250-line-1)">
</text><text class="terminal-850988250-r6" x="48.8" y="68.8" textLength="85.4" clip-path="url(#terminal-850988250-line-2)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="68.8" textLength="85.4" clip-path="url(#terminal-850988250-line-2)">&#160;link&#160;&#160;</text><text class="terminal-850988250-r6" x="219.6" y="68.8" textLength="292.8" clip-path="url(#terminal-850988250-line-2)">&#160;Hdix&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="512.4" y="68.8" textLength="561.2" clip-path="url(#terminal-850988250-line-2)">&#160;Backend&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="1073.6" y="68.8" textLength="317.2" clip-path="url(#terminal-850988250-line-2)">&#160;MILANO,&#160;LOMBARDIA,&#160;Italy&#160;</text><text class="terminal-850988250-r7" x="1537.2" y="68.8" textLength="24.4" clip-path="url(#terminal-850988250-line-2)">▅▅</text><text class="terminal-850988250-r3" x="1561.6" y="68.8" textLength="12.2" clip-path="url(#terminal-850988250-line-2)">
</text><text class="terminal-850988250-r6" x="48.8" y="93.2" textLength="85.4" clip-path="url(#terminal-850988250-line-3)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="93.2" textLength="85.4" clip-path="url(#terminal-850988250-line-3)">&#160;auto&#160;&#160;</text><text class="terminal-850988250-r6" x="219.6" y="93.2" textLength="292.8" clip-path="url(#terminal-850988250-line-3)">&#160;Treatwell&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="512.4" y="93.2" textLength="561.2" clip-path="url(#terminal-850988250-line-3)">&#160;AI&#160;Software&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="1073.6" y="93.2" textLength="317.2" clip-path="url(#terminal-850988250-line-3)">&#160;Milan,&#160;Metropolitan&#160;City&#160;</text><text class="terminal-850988250-r6" x="1390.8" y="93.2" textLength="146.4" clip-path="url(#terminal-850988250-line-3)">&#160;no&#160;text&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r3" x="1561.6" y="93.2" textLength="12.2" clip-path="url(#terminal-850988250-line-3)">
</text><text class="terminal-850988250-r6" x="48.8" y="117.6" textLength="85.4" clip-path="url(#terminal-850988250-line-4)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="117.6" textLength="85.4" clip-path="url(#terminal-850988250-line-4)">&#160;auto&#160;&#160;</text><text class="terminal-850988250-r6" x="219.6" y="117.6" textLength="292.8" clip-path="url(#terminal-850988250-line-4)">&#160;Lexroom&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="512.4" y="117.6" textLength="561.2" clip-path="url(#terminal-850988250-line-4)">&#160;Junior&#160;Software&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="1073.6" y="117.6" textLength="317.2" clip-path="url(#terminal-850988250-line-4)">&#160;Milan,&#160;Lombardia,&#160;IT&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="1390.8" y="117.6" textLength="146.4" clip-path="url(#terminal-850988250-line-4)">&#160;no&#160;text&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r3" x="1561.6" y="117.6" textLength="12.2" clip-path="url(#terminal-850988250-line-4)">
</text><text class="terminal-850988250-r2" x="48.8" y="142" textLength="85.4" clip-path="url(#terminal-850988250-line-5)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-850988250-r2" x="134.2" y="142" textLength="85.4" clip-path="url(#terminal-850988250-line-5)">&#160;auto&#160;&#160;</text><text class="terminal-850988250-r2" x="219.6" y="142" textLength="292.8" clip-path="url(#terminal-850988250-line-5)">&#160;Prima&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r2" x="512.4" y="142" textLength="561.2" clip-path="url(#terminal-850988250-line-5)">&#160;Software&#160;Engineer&#160;–&#160;AI/ML&#160;Platform&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r2" x="1073.6" y="142" textLength="317.2" clip-path="url(#terminal-850988250-line-5)">&#160;Milan,&#160;IT&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r3" x="1561.6" y="142" textLength="12.2" clip-path="url(#terminal-850988250-line-5)">
</text><text class="terminal-850988250-r6" x="48.8" y="166.4" textLength="85.4" clip-path="url(#terminal-850988250-line-6)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="166.4" textLength="85.4" clip-path="url(#terminal-850988250-line-6)">&#160;link&#160;&#160;</text><text class="terminal-850988250-r6" x="219.6" y="166.4" textLength="292.8" clip-path="url(#terminal-850988250-line-6)">&#160;Intesa&#160;Sanpaolo&#160;Group&#160;&#160;</text><text class="terminal-850988250-r6" x="512.4" y="166.4" textLength="561.2" clip-path="url(#terminal-850988250-line-6)">&#160;Senior&#160;Software&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="1073.6" y="166.4" textLength="317.2" clip-path="url(#terminal-850988250-line-6)">&#160;Milano,&#160;IT&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r3" x="1561.6" y="166.4" textLength="12.2" clip-path="url(#terminal-850988250-line-6)">
</text><text class="terminal-850988250-r6" x="48.8" y="190.8" textLength="85.4" clip-path="url(#terminal-850988250-line-7)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="190.8" textLength="85.4" clip-path="url(#terminal-850988250-line-7)">&#160;auto&#160;&#160;</text><text class="terminal-850988250-r6" x="219.6" y="190.8" textLength="292.8" clip-path="url(#terminal-850988250-line-7)">&#160;Job&#160;Mobz&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="512.4" y="190.8" textLength="561.2" clip-path="url(#terminal-850988250-line-7)">&#160;Full&#160;Stack&#160;Software&#160;Developer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="1073.6" y="190.8" textLength="317.2" clip-path="url(#terminal-850988250-line-7)">&#160;Milan,&#160;Lombardy,&#160;IT&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="1390.8" y="190.8" textLength="146.4" clip-path="url(#terminal-850988250-line-7)">&#160;no&#160;text&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r3" x="1561.6" y="190.8" textLength="12.2" clip-path="url(#terminal-850988250-line-7)">
</text><text class="terminal-850988250-r6" x="48.8" y="215.2" textLength="85.4" clip-path="url(#terminal-850988250-line-8)">&#160;3.5&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="215.2" textLength="36.6" clip-path="url(#terminal-850988250-line-8)">&#160;au</text><text class="terminal-850988250-r8" x="170.8" y="215.2" textLength="12.2" clip-path="url(#terminal-850988250-line-8)">█</text><text class="terminal-850988250-r8" x="183" y="215.2" textLength="1195.6" clip-path="url(#terminal-850988250-line-8)">▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀</text><text class="terminal-850988250-r8" x="1378.6" y="215.2" textLength="12.2" clip-path="url(#terminal-850988250-line-8)">█</text><text class="terminal-850988250-r6" x="1390.8" y="215.2" textLength="146.4" clip-path="url(#terminal-850988250-line-8)">&#160;no&#160;text&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r3" x="1561.6" y="215.2" textLength="12.2" clip-path="url(#terminal-850988250-line-8)">
</text><text class="terminal-850988250-r6" x="48.8" y="239.6" textLength="85.4" clip-path="url(#terminal-850988250-line-9)">&#160;3.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="239.6" textLength="36.6" clip-path="url(#terminal-850988250-line-9)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="239.6" textLength="12.2" clip-path="url(#terminal-850988250-line-9)">█</text><text class="terminal-850988250-r8" x="1378.6" y="239.6" textLength="12.2" clip-path="url(#terminal-850988250-line-9)">█</text><text class="terminal-850988250-r3" x="1561.6" y="239.6" textLength="12.2" clip-path="url(#terminal-850988250-line-9)">
</text><text class="terminal-850988250-r6" x="48.8" y="264" textLength="85.4" clip-path="url(#terminal-850988250-line-10)">&#160;3.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="264" textLength="36.6" clip-path="url(#terminal-850988250-line-10)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="264" textLength="12.2" clip-path="url(#terminal-850988250-line-10)">█</text><text class="terminal-850988250-r8" x="1378.6" y="264" textLength="12.2" clip-path="url(#terminal-850988250-line-10)">█</text><text class="terminal-850988250-r3" x="1561.6" y="264" textLength="12.2" clip-path="url(#terminal-850988250-line-10)">
</text><text class="terminal-850988250-r6" x="48.8" y="288.4" textLength="85.4" clip-path="url(#terminal-850988250-line-11)">&#160;3.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="288.4" textLength="36.6" clip-path="url(#terminal-850988250-line-11)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="288.4" textLength="12.2" clip-path="url(#terminal-850988250-line-11)">█</text><text class="terminal-850988250-r1" x="207.4" y="288.4" textLength="414.8" clip-path="url(#terminal-850988250-line-11)">Software&#160;Engineer&#160;–&#160;AI/ML&#160;Platform</text><text class="terminal-850988250-r8" x="1378.6" y="288.4" textLength="12.2" clip-path="url(#terminal-850988250-line-11)">█</text><text class="terminal-850988250-r6" x="1390.8" y="288.4" textLength="146.4" clip-path="url(#terminal-850988250-line-11)">&#160;no&#160;text&#160;&#160;&#160;&#160;</text><text class="terminal-850988250-r3" x="1561.6" y="288.4" textLength="12.2" clip-path="url(#terminal-850988250-line-11)">
</text><text class="terminal-850988250-r6" x="48.8" y="312.8" textLength="85.4" clip-path="url(#terminal-850988250-line-12)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="312.8" textLength="36.6" clip-path="url(#terminal-850988250-line-12)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="312.8" textLength="12.2" clip-path="url(#terminal-850988250-line-12)">█</text><text class="terminal-850988250-r1" x="207.4" y="312.8" textLength="207.4" clip-path="url(#terminal-850988250-line-12)">Prima&#160;·&#160;Milan,&#160;IT</text><text class="terminal-850988250-r8" x="1378.6" y="312.8" textLength="12.2" clip-path="url(#terminal-850988250-line-12)">█</text><text class="terminal-850988250-r3" x="1561.6" y="312.8" textLength="12.2" clip-path="url(#terminal-850988250-line-12)">
</text><text class="terminal-850988250-r6" x="48.8" y="337.2" textLength="85.4" clip-path="url(#terminal-850988250-line-13)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="337.2" textLength="36.6" clip-path="url(#terminal-850988250-line-13)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="337.2" textLength="12.2" clip-path="url(#terminal-850988250-line-13)">█</text><text class="terminal-850988250-r1" x="207.4" y="337.2" textLength="890.6" clip-path="url(#terminal-850988250-line-13)">https://jobs.eu.lever.co/prima/b33393a8-b1eb-4ab6-b11a-4638f25a1dff/apply</text><text class="terminal-850988250-r8" x="1378.6" y="337.2" textLength="12.2" clip-path="url(#terminal-850988250-line-13)">█</text><text class="terminal-850988250-r3" x="1561.6" y="337.2" textLength="12.2" clip-path="url(#terminal-850988250-line-13)">
</text><text class="terminal-850988250-r6" x="48.8" y="361.6" textLength="85.4" clip-path="url(#terminal-850988250-line-14)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="361.6" textLength="36.6" clip-path="url(#terminal-850988250-line-14)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="361.6" textLength="12.2" clip-path="url(#terminal-850988250-line-14)">█</text><text class="terminal-850988250-r8" x="1378.6" y="361.6" textLength="12.2" clip-path="url(#terminal-850988250-line-14)">█</text><text class="terminal-850988250-r3" x="1561.6" y="361.6" textLength="12.2" clip-path="url(#terminal-850988250-line-14)">
</text><text class="terminal-850988250-r9" x="12.2" y="386" textLength="12.2" clip-path="url(#terminal-850988250-line-15)">●</text><text class="terminal-850988250-r6" x="48.8" y="386" textLength="85.4" clip-path="url(#terminal-850988250-line-15)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="386" textLength="36.6" clip-path="url(#terminal-850988250-line-15)">&#160;au</text><text class="terminal-850988250-r8" x="170.8" y="386" textLength="12.2" clip-path="url(#terminal-850988250-line-15)">█</text><text class="terminal-850988250-r1" x="207.4" y="386" textLength="439.2" clip-path="url(#terminal-850988250-line-15)">Score&#160;4.0/5&#160;·&#160;posting&#160;looks&#160;credible</text><text class="terminal-850988250-r8" x="1378.6" y="386" textLength="12.2" clip-path="url(#terminal-850988250-line-15)">█</text><text class="terminal-850988250-r3" x="1561.6" y="386" textLength="12.2" clip-path="url(#terminal-850988250-line-15)">
</text><text class="terminal-850988250-r9" x="12.2" y="410.4" textLength="12.2" clip-path="url(#terminal-850988250-line-16)">●</text><text class="terminal-850988250-r6" x="48.8" y="410.4" textLength="85.4" clip-path="url(#terminal-850988250-line-16)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="410.4" textLength="36.6" clip-path="url(#terminal-850988250-line-16)">&#160;au</text><text class="terminal-850988250-r8" x="170.8" y="410.4" textLength="12.2" clip-path="url(#terminal-850988250-line-16)">█</text><text class="terminal-850988250-r1" x="207.4" y="410.4" textLength="780.8" clip-path="url(#terminal-850988250-line-16)">role:&#160;yes&#160;·&#160;must&#160;haves:&#160;unclear&#160;·&#160;level:&#160;unclear&#160;·&#160;location:&#160;yes</text><text class="terminal-850988250-r8" x="1378.6" y="410.4" textLength="12.2" clip-path="url(#terminal-850988250-line-16)">█</text><text class="terminal-850988250-r3" x="1561.6" y="410.4" textLength="12.2" clip-path="url(#terminal-850988250-line-16)">
</text><text class="terminal-850988250-r6" x="48.8" y="434.8" textLength="85.4" clip-path="url(#terminal-850988250-line-17)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="434.8" textLength="36.6" clip-path="url(#terminal-850988250-line-17)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="434.8" textLength="12.2" clip-path="url(#terminal-850988250-line-17)">█</text><text class="terminal-850988250-r8" x="1378.6" y="434.8" textLength="12.2" clip-path="url(#terminal-850988250-line-17)">█</text><text class="terminal-850988250-r3" x="1561.6" y="434.8" textLength="12.2" clip-path="url(#terminal-850988250-line-17)">
</text><text class="terminal-850988250-r6" x="48.8" y="459.2" textLength="85.4" clip-path="url(#terminal-850988250-line-18)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="459.2" textLength="36.6" clip-path="url(#terminal-850988250-line-18)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="459.2" textLength="12.2" clip-path="url(#terminal-850988250-line-18)">█</text><text class="terminal-850988250-r1" x="207.4" y="459.2" textLength="1110.2" clip-path="url(#terminal-850988250-line-18)">This&#160;is&#160;a&#160;software&#160;engineering&#160;role&#160;on&#160;an&#160;AI/ML&#160;platform&#160;in&#160;Milan&#160;and&#160;remote,&#160;so&#160;it&#160;matches</text><text class="terminal-850988250-r8" x="1378.6" y="459.2" textLength="12.2" clip-path="url(#terminal-850988250-line-18)">█</text><text class="terminal-850988250-r3" x="1561.6" y="459.2" textLength="12.2" clip-path="url(#terminal-850988250-line-18)">
</text><text class="terminal-850988250-r6" x="48.8" y="483.6" textLength="85.4" clip-path="url(#terminal-850988250-line-19)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="483.6" textLength="36.6" clip-path="url(#terminal-850988250-line-19)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="483.6" textLength="12.2" clip-path="url(#terminal-850988250-line-19)">█</text><text class="terminal-850988250-r1" x="207.4" y="483.6" textLength="1061.4" clip-path="url(#terminal-850988250-line-19)">your&#160;location&#160;and&#160;general&#160;software&#160;engineering&#160;direction.&#160;However,&#160;the&#160;posting&#160;gives&#160;no</text><text class="terminal-850988250-r8" x="1378.6" y="483.6" textLength="12.2" clip-path="url(#terminal-850988250-line-19)">█</text><text class="terminal-850988250-r3" x="1561.6" y="483.6" textLength="12.2" clip-path="url(#terminal-850988250-line-19)">
</text><text class="terminal-850988250-r6" x="48.8" y="508" textLength="85.4" clip-path="url(#terminal-850988250-line-20)">&#160;2.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="508" textLength="36.6" clip-path="url(#terminal-850988250-line-20)">&#160;au</text><text class="terminal-850988250-r8" x="170.8" y="508" textLength="12.2" clip-path="url(#terminal-850988250-line-20)">█</text><text class="terminal-850988250-r1" x="207.4" y="508" textLength="1073.6" clip-path="url(#terminal-850988250-line-20)">requirements&#160;or&#160;seniority&#160;and&#160;your&#160;CV&#160;does&#160;not&#160;show&#160;AI/ML&#160;platform&#160;experience,&#160;so&#160;fit&#160;is</text><text class="terminal-850988250-r8" x="1378.6" y="508" textLength="12.2" clip-path="url(#terminal-850988250-line-20)">█</text><text class="terminal-850988250-r3" x="1561.6" y="508" textLength="12.2" clip-path="url(#terminal-850988250-line-20)">
</text><text class="terminal-850988250-r6" x="48.8" y="532.4" textLength="85.4" clip-path="url(#terminal-850988250-line-21)">&#160;2.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="532.4" textLength="36.6" clip-path="url(#terminal-850988250-line-21)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="532.4" textLength="12.2" clip-path="url(#terminal-850988250-line-21)">█</text><text class="terminal-850988250-r1" x="207.4" y="532.4" textLength="329.4" clip-path="url(#terminal-850988250-line-21)">uncertain&#160;beyond&#160;the&#160;title.</text><text class="terminal-850988250-r8" x="1378.6" y="532.4" textLength="12.2" clip-path="url(#terminal-850988250-line-21)">█</text><text class="terminal-850988250-r3" x="1561.6" y="532.4" textLength="12.2" clip-path="url(#terminal-850988250-line-21)">
</text><text class="terminal-850988250-r6" x="48.8" y="556.8" textLength="85.4" clip-path="url(#terminal-850988250-line-22)">&#160;1.5&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="556.8" textLength="36.6" clip-path="url(#terminal-850988250-line-22)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="556.8" textLength="12.2" clip-path="url(#terminal-850988250-line-22)">█</text><text class="terminal-850988250-r8" x="1378.6" y="556.8" textLength="12.2" clip-path="url(#terminal-850988250-line-22)">█</text><text class="terminal-850988250-r3" x="1561.6" y="556.8" textLength="12.2" clip-path="url(#terminal-850988250-line-22)">
</text><text class="terminal-850988250-r6" x="48.8" y="581.2" textLength="85.4" clip-path="url(#terminal-850988250-line-23)">&#160;1.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="581.2" textLength="36.6" clip-path="url(#terminal-850988250-line-23)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="581.2" textLength="12.2" clip-path="url(#terminal-850988250-line-23)">█</text><text class="terminal-850988250-r10" x="207.4" y="581.2" textLength="61" clip-path="url(#terminal-850988250-line-23)">&#160;esc&#160;</text><text class="terminal-850988250-r1" x="268.4" y="581.2" textLength="61" clip-path="url(#terminal-850988250-line-23)">Back&#160;</text><text class="terminal-850988250-r8" x="1378.6" y="581.2" textLength="12.2" clip-path="url(#terminal-850988250-line-23)">█</text><text class="terminal-850988250-r3" x="1561.6" y="581.2" textLength="12.2" clip-path="url(#terminal-850988250-line-23)">
</text><text class="terminal-850988250-r6" x="48.8" y="605.6" textLength="85.4" clip-path="url(#terminal-850988250-line-24)">&#160;1.0&#160;&#160;&#160;</text><text class="terminal-850988250-r6" x="134.2" y="605.6" textLength="36.6" clip-path="url(#terminal-850988250-line-24)">&#160;li</text><text class="terminal-850988250-r8" x="170.8" y="605.6" textLength="12.2" clip-path="url(#terminal-850988250-line-24)">█</text><text class="terminal-850988250-r8" x="1378.6" y="605.6" textLength="12.2" clip-path="url(#terminal-850988250-line-24)">█</text><text class="terminal-850988250-r3" x="1561.6" y="605.6" textLength="12.2" clip-path="url(#terminal-850988250-line-24)">
</text><text class="terminal-850988250-r8" x="170.8" y="630" textLength="12.2" clip-path="url(#terminal-850988250-line-25)">█</text><text class="terminal-850988250-r8" x="183" y="630" textLength="1195.6" clip-path="url(#terminal-850988250-line-25)">▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄</text><text class="terminal-850988250-r8" x="1378.6" y="630" textLength="12.2" clip-path="url(#terminal-850988250-line-25)">█</text><text class="terminal-850988250-r5" x="1415.2" y="630" textLength="12.2" clip-path="url(#terminal-850988250-line-25)">▊</text><text class="terminal-850988250-r3" x="1561.6" y="630" textLength="12.2" clip-path="url(#terminal-850988250-line-25)">
</text><text class="terminal-850988250-r11" x="0" y="654.4" textLength="1561.6" clip-path="url(#terminal-850988250-line-26)">────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────</text><text class="terminal-850988250-r3" x="1561.6" y="654.4" textLength="12.2" clip-path="url(#terminal-850988250-line-26)">
</text><text class="terminal-850988250-r6" x="12.2" y="678.8" textLength="854" clip-path="url(#terminal-850988250-line-27)">422&#160;postings&#160;fit&#160;your&#160;search,&#160;of&#160;10,213,066&#160;in&#160;the&#160;job&#160;database&#160;built&#160;</text><text class="terminal-850988250-r3" x="1561.6" y="678.8" textLength="12.2" clip-path="url(#terminal-850988250-line-27)">
</text><text class="terminal-850988250-r6" x="12.2" y="703.2" textLength="231.8" clip-path="url(#terminal-850988250-line-28)">2026-11-05;&#160;422&#160;new</text><text class="terminal-850988250-r3" x="1561.6" y="703.2" textLength="12.2" clip-path="url(#terminal-850988250-line-28)">
</text><text class="terminal-850988250-r6" x="12.2" y="727.6" textLength="963.8" clip-path="url(#terminal-850988250-line-29)">Jev&#160;picked&#160;25&#160;postings&#160;to&#160;score.&#160;Press&#160;m&#160;for&#160;the&#160;next&#160;batch&#160;when&#160;they&#160;are&#160;done.</text><text class="terminal-850988250-r3" x="1561.6" y="727.6" textLength="12.2" clip-path="url(#terminal-850988250-line-29)">
</text><text class="terminal-850988250-r3" x="1561.6" y="752" textLength="12.2" clip-path="url(#terminal-850988250-line-30)">
</text><text class="terminal-850988250-r3" x="1561.6" y="776.4" textLength="12.2" clip-path="url(#terminal-850988250-line-31)">
</text><text class="terminal-850988250-r3" x="1561.6" y="800.8" textLength="12.2" clip-path="url(#terminal-850988250-line-32)">
</text><text class="terminal-850988250-r12" x="0" y="825.2" textLength="85.4" clip-path="url(#terminal-850988250-line-33)">&#160;space&#160;</text><text class="terminal-850988250-r6" x="85.4" y="825.2" textLength="85.4" clip-path="url(#terminal-850988250-line-33)">Select&#160;</text><text class="terminal-850988250-r12" x="170.8" y="825.2" textLength="36.6" clip-path="url(#terminal-850988250-line-33)">&#160;a&#160;</text><text class="terminal-850988250-r6" x="207.4" y="825.2" textLength="73.2" clip-path="url(#terminal-850988250-line-33)">Apply&#160;</text><text class="terminal-850988250-r12" x="280.6" y="825.2" textLength="36.6" clip-path="url(#terminal-850988250-line-33)">&#160;s&#160;</text><text class="terminal-850988250-r6" x="317.2" y="825.2" textLength="61" clip-path="url(#terminal-850988250-line-33)">Sent&#160;</text><text class="terminal-850988250-r12" x="378.2" y="825.2" textLength="36.6" clip-path="url(#terminal-850988250-line-33)">&#160;o&#160;</text><text class="terminal-850988250-r6" x="414.8" y="825.2" textLength="61" clip-path="url(#terminal-850988250-line-33)">Open&#160;</text><text class="terminal-850988250-r12" x="475.8" y="825.2" textLength="36.6" clip-path="url(#terminal-850988250-line-33)">&#160;m&#160;</text><text class="terminal-850988250-r6" x="512.4" y="825.2" textLength="61" clip-path="url(#terminal-850988250-line-33)">More&#160;</text><text class="terminal-850988250-r12" x="573.4" y="825.2" textLength="36.6" clip-path="url(#terminal-850988250-line-33)">&#160;r&#160;</text><text class="terminal-850988250-r6" x="610" y="825.2" textLength="134.2" clip-path="url(#terminal-850988250-line-33)">New&#160;resume&#160;</text><text class="terminal-850988250-r12" x="744.2" y="825.2" textLength="36.6" clip-path="url(#terminal-850988250-line-33)">&#160;l&#160;</text><text class="terminal-850988250-r6" x="780.8" y="825.2" textLength="97.6" clip-path="url(#terminal-850988250-line-33)">Sign&#160;in&#160;</text><text class="terminal-850988250-r12" x="878.4" y="825.2" textLength="36.6" clip-path="url(#terminal-850988250-line-33)">&#160;q&#160;</text><text class="terminal-850988250-r6" x="915" y="825.2" textLength="61" clip-path="url(#terminal-850988250-line-33)">Quit&#160;</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 66 KiB

+198
View File
@@ -0,0 +1,198 @@
<svg class="rich-terminal" viewBox="0 0 1580 879.5999999999999" xmlns="http://www.w3.org/2000/svg">
<!-- Generated with Rich https://www.textualize.io -->
<style>
@font-face {
font-family: "Fira Code";
src: local("FiraCode-Regular"),
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Regular.woff2") format("woff2"),
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Regular.woff") format("woff");
font-style: normal;
font-weight: 400;
}
@font-face {
font-family: "Fira Code";
src: local("FiraCode-Bold"),
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff2/FiraCode-Bold.woff2") format("woff2"),
url("https://cdnjs.cloudflare.com/ajax/libs/firacode/6.2.0/woff/FiraCode-Bold.woff") format("woff");
font-style: bold;
font-weight: 700;
}
.terminal-2231837046-matrix {
font-family: Fira Code, monospace;
font-size: 20px;
line-height: 24.4px;
font-variant-east-asian: full-width;
}
.terminal-2231837046-title {
font-size: 18px;
font-weight: bold;
font-family: arial;
}
.terminal-2231837046-r1 { fill: #c5c8c6 }
.terminal-2231837046-r2 { fill: #eaeaea;font-weight: bold }
.terminal-2231837046-r3 { fill: #e0e0e0;font-weight: bold }
.terminal-2231837046-r4 { fill: #272727 }
.terminal-2231837046-r5 { fill: #e0e0e0 }
.terminal-2231837046-r6 { fill: #000000 }
.terminal-2231837046-r7 { fill: #c3c3c3;font-weight: bold }
.terminal-2231837046-r8 { fill: #282828 }
.terminal-2231837046-r9 { fill: #656565 }
.terminal-2231837046-r10 { fill: #b0b0b0;font-weight: bold }
</style>
<defs>
<clipPath id="terminal-2231837046-clip-terminal">
<rect x="0" y="0" width="1560.6" height="828.5999999999999" />
</clipPath>
<clipPath id="terminal-2231837046-line-0">
<rect x="0" y="1.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-1">
<rect x="0" y="25.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-2">
<rect x="0" y="50.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-3">
<rect x="0" y="74.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-4">
<rect x="0" y="99.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-5">
<rect x="0" y="123.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-6">
<rect x="0" y="147.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-7">
<rect x="0" y="172.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-8">
<rect x="0" y="196.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-9">
<rect x="0" y="221.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-10">
<rect x="0" y="245.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-11">
<rect x="0" y="269.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-12">
<rect x="0" y="294.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-13">
<rect x="0" y="318.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-14">
<rect x="0" y="343.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-15">
<rect x="0" y="367.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-16">
<rect x="0" y="391.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-17">
<rect x="0" y="416.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-18">
<rect x="0" y="440.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-19">
<rect x="0" y="465.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-20">
<rect x="0" y="489.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-21">
<rect x="0" y="513.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-22">
<rect x="0" y="538.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-23">
<rect x="0" y="562.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-24">
<rect x="0" y="587.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-25">
<rect x="0" y="611.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-26">
<rect x="0" y="635.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-27">
<rect x="0" y="660.3" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-28">
<rect x="0" y="684.7" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-29">
<rect x="0" y="709.1" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-30">
<rect x="0" y="733.5" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-31">
<rect x="0" y="757.9" width="1561.6" height="24.65"/>
</clipPath>
<clipPath id="terminal-2231837046-line-32">
<rect x="0" y="782.3" width="1561.6" height="24.65"/>
</clipPath>
</defs>
<rect fill="#292929" stroke="rgba(255,255,255,0.35)" stroke-width="1" x="1" y="1" width="1578" height="877.6" rx="8"/><text class="terminal-2231837046-title" fill="#c5c8c6" text-anchor="middle" x="789" y="27">AIHawk</text>
<g transform="translate(26,22)">
<circle cx="0" cy="0" r="7" fill="#ff5f57"/>
<circle cx="22" cy="0" r="7" fill="#febc2e"/>
<circle cx="44" cy="0" r="7" fill="#28c840"/>
</g>
<g transform="translate(9, 41)" clip-path="url(#terminal-2231837046-clip-terminal)">
<rect fill="#656565" x="0" y="1.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#656565" x="12.2" y="1.5" width="939.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#656565" x="951.6" y="1.5" width="597.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#656565" x="1549.4" y="1.5" width="12.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#363636" x="0" y="25.9" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#363636" x="48.8" y="25.9" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#363636" x="134.2" y="25.9" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#363636" x="219.6" y="25.9" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#363636" x="512.4" y="25.9" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#363636" x="1073.6" y="25.9" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#363636" x="1390.8" y="25.9" width="146.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#282828" x="1537.2" y="25.9" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="0" y="50.3" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="48.8" y="50.3" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="134.2" y="50.3" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="219.6" y="50.3" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="512.4" y="50.3" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="1073.6" y="50.3" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="1390.8" y="50.3" width="146.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#282828" x="1537.2" y="50.3" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#272727" x="0" y="74.7" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#272727" x="48.8" y="74.7" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#272727" x="134.2" y="74.7" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#272727" x="219.6" y="74.7" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#272727" x="512.4" y="74.7" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#272727" x="1073.6" y="74.7" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#272727" x="1390.8" y="74.7" width="146.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#000000" x="1537.2" y="74.7" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="0" y="99.1" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="48.8" y="99.1" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="134.2" y="99.1" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="219.6" y="99.1" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="512.4" y="99.1" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="1073.6" y="99.1" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="1390.8" y="99.1" width="146.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#000000" x="1537.2" y="99.1" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#656565" x="0" y="123.5" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#656565" x="48.8" y="123.5" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#656565" x="134.2" y="123.5" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#656565" x="219.6" y="123.5" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#656565" x="512.4" y="123.5" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#656565" x="1073.6" y="123.5" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#656565" x="1390.8" y="123.5" width="146.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#000000" x="1537.2" y="123.5" width="24.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="0" y="147.9" width="48.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="48.8" y="147.9" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="134.2" y="147.9" width="85.4" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="219.6" y="147.9" width="292.8" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="512.4" y="147.9" width="561.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="1073.6" y="147.9" width="317.2" height="24.65" shape-rendering="crispEdges"/><rect fill="#1c1c1c" x="1390.8" y="147.9" width="146.4" height="24.65" shape-rLine truncated
<g class="terminal-2231837046-matrix">
<text class="terminal-2231837046-r2" x="12.2" y="20" textLength="939.4" clip-path="url(#terminal-2231837046-line-0)">AIHawk&#160;&#160;Ada&#160;Rossi&#160;·&#160;Python&#160;Developer,&#160;Django&#160;Developer&#160;·&#160;Milan,&#160;Milano,&#160;Monza</text><text class="terminal-2231837046-r1" x="1561.6" y="20" textLength="12.2" clip-path="url(#terminal-2231837046-line-0)">
</text><text class="terminal-2231837046-r3" x="48.8" y="44.4" textLength="85.4" clip-path="url(#terminal-2231837046-line-1)">&#160;Score&#160;</text><text class="terminal-2231837046-r3" x="134.2" y="44.4" textLength="85.4" clip-path="url(#terminal-2231837046-line-1)">&#160;Apply&#160;</text><text class="terminal-2231837046-r3" x="219.6" y="44.4" textLength="292.8" clip-path="url(#terminal-2231837046-line-1)">&#160;Company&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r3" x="512.4" y="44.4" textLength="561.2" clip-path="url(#terminal-2231837046-line-1)">&#160;Role&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r3" x="1073.6" y="44.4" textLength="317.2" clip-path="url(#terminal-2231837046-line-1)">&#160;Location&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r3" x="1390.8" y="44.4" textLength="146.4" clip-path="url(#terminal-2231837046-line-1)">&#160;Status&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="44.4" textLength="12.2" clip-path="url(#terminal-2231837046-line-1)">
</text><text class="terminal-2231837046-r5" x="48.8" y="68.8" textLength="85.4" clip-path="url(#terminal-2231837046-line-2)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="68.8" textLength="85.4" clip-path="url(#terminal-2231837046-line-2)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="68.8" textLength="292.8" clip-path="url(#terminal-2231837046-line-2)">&#160;Hdix&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="68.8" textLength="561.2" clip-path="url(#terminal-2231837046-line-2)">&#160;Backend&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="68.8" textLength="317.2" clip-path="url(#terminal-2231837046-line-2)">&#160;MILANO,&#160;LOMBARDIA,&#160;Italy&#160;</text><text class="terminal-2231837046-r6" x="1537.2" y="68.8" textLength="24.4" clip-path="url(#terminal-2231837046-line-2)">▅▅</text><text class="terminal-2231837046-r1" x="1561.6" y="68.8" textLength="12.2" clip-path="url(#terminal-2231837046-line-2)">
</text><text class="terminal-2231837046-r5" x="48.8" y="93.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-3)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="93.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-3)">&#160;auto&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="93.2" textLength="292.8" clip-path="url(#terminal-2231837046-line-3)">&#160;Treatwell&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="93.2" textLength="561.2" clip-path="url(#terminal-2231837046-line-3)">&#160;AI&#160;Software&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="93.2" textLength="317.2" clip-path="url(#terminal-2231837046-line-3)">&#160;Milan,&#160;Metropolitan&#160;City&#160;</text><text class="terminal-2231837046-r5" x="1390.8" y="93.2" textLength="146.4" clip-path="url(#terminal-2231837046-line-3)">&#160;no&#160;text&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="93.2" textLength="12.2" clip-path="url(#terminal-2231837046-line-3)">
</text><text class="terminal-2231837046-r5" x="48.8" y="117.6" textLength="85.4" clip-path="url(#terminal-2231837046-line-4)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="117.6" textLength="85.4" clip-path="url(#terminal-2231837046-line-4)">&#160;auto&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="117.6" textLength="292.8" clip-path="url(#terminal-2231837046-line-4)">&#160;Lexroom&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="117.6" textLength="561.2" clip-path="url(#terminal-2231837046-line-4)">&#160;Junior&#160;Software&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="117.6" textLength="317.2" clip-path="url(#terminal-2231837046-line-4)">&#160;Milan,&#160;Lombardia,&#160;IT&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1390.8" y="117.6" textLength="146.4" clip-path="url(#terminal-2231837046-line-4)">&#160;no&#160;text&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="117.6" textLength="12.2" clip-path="url(#terminal-2231837046-line-4)">
</text><text class="terminal-2231837046-r2" x="48.8" y="142" textLength="85.4" clip-path="url(#terminal-2231837046-line-5)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r2" x="134.2" y="142" textLength="85.4" clip-path="url(#terminal-2231837046-line-5)">&#160;auto&#160;&#160;</text><text class="terminal-2231837046-r2" x="219.6" y="142" textLength="292.8" clip-path="url(#terminal-2231837046-line-5)">&#160;Prima&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r2" x="512.4" y="142" textLength="561.2" clip-path="url(#terminal-2231837046-line-5)">&#160;Software&#160;Engineer&#160;–&#160;AI/ML&#160;Platform&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r2" x="1073.6" y="142" textLength="317.2" clip-path="url(#terminal-2231837046-line-5)">&#160;Milan,&#160;IT&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="142" textLength="12.2" clip-path="url(#terminal-2231837046-line-5)">
</text><text class="terminal-2231837046-r5" x="48.8" y="166.4" textLength="85.4" clip-path="url(#terminal-2231837046-line-6)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="166.4" textLength="85.4" clip-path="url(#terminal-2231837046-line-6)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="166.4" textLength="292.8" clip-path="url(#terminal-2231837046-line-6)">&#160;Intesa&#160;Sanpaolo&#160;Group&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="166.4" textLength="561.2" clip-path="url(#terminal-2231837046-line-6)">&#160;Senior&#160;Software&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="166.4" textLength="317.2" clip-path="url(#terminal-2231837046-line-6)">&#160;Milano,&#160;IT&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="166.4" textLength="12.2" clip-path="url(#terminal-2231837046-line-6)">
</text><text class="terminal-2231837046-r5" x="48.8" y="190.8" textLength="85.4" clip-path="url(#terminal-2231837046-line-7)">&#160;4.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="190.8" textLength="85.4" clip-path="url(#terminal-2231837046-line-7)">&#160;auto&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="190.8" textLength="292.8" clip-path="url(#terminal-2231837046-line-7)">&#160;Job&#160;Mobz&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="190.8" textLength="561.2" clip-path="url(#terminal-2231837046-line-7)">&#160;Full&#160;Stack&#160;Software&#160;Developer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="190.8" textLength="317.2" clip-path="url(#terminal-2231837046-line-7)">&#160;Milan,&#160;Lombardy,&#160;IT&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1390.8" y="190.8" textLength="146.4" clip-path="url(#terminal-2231837046-line-7)">&#160;no&#160;text&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="190.8" textLength="12.2" clip-path="url(#terminal-2231837046-line-7)">
</text><text class="terminal-2231837046-r5" x="48.8" y="215.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-8)">&#160;3.5&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="215.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-8)">&#160;auto&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="215.2" textLength="292.8" clip-path="url(#terminal-2231837046-line-8)">&#160;Jobgether&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="215.2" textLength="561.2" clip-path="url(#terminal-2231837046-line-8)">&#160;Senior&#160;Python&#160;Developer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="215.2" textLength="317.2" clip-path="url(#terminal-2231837046-line-8)">&#160;IT&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1390.8" y="215.2" textLength="146.4" clip-path="url(#terminal-2231837046-line-8)">&#160;no&#160;text&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="215.2" textLength="12.2" clip-path="url(#terminal-2231837046-line-8)">
</text><text class="terminal-2231837046-r5" x="48.8" y="239.6" textLength="85.4" clip-path="url(#terminal-2231837046-line-9)">&#160;3.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="239.6" textLength="85.4" clip-path="url(#terminal-2231837046-line-9)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="239.6" textLength="292.8" clip-path="url(#terminal-2231837046-line-9)">&#160;NTT&#160;DATA&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="239.6" textLength="561.2" clip-path="url(#terminal-2231837046-line-9)">&#160;IT&#160;Consultant/software&#160;developer&#160;-&#160;Categorie&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="239.6" textLength="317.2" clip-path="url(#terminal-2231837046-line-9)">&#160;Milan,&#160;Italy&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="239.6" textLength="12.2" clip-path="url(#terminal-2231837046-line-9)">
</text><text class="terminal-2231837046-r5" x="48.8" y="264" textLength="85.4" clip-path="url(#terminal-2231837046-line-10)">&#160;3.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="264" textLength="85.4" clip-path="url(#terminal-2231837046-line-10)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="264" textLength="292.8" clip-path="url(#terminal-2231837046-line-10)">&#160;Intesa&#160;Sanpaolo&#160;Group&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="264" textLength="561.2" clip-path="url(#terminal-2231837046-line-10)">&#160;Sviluppatore&#160;Software&#160;Algorithmics&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="264" textLength="317.2" clip-path="url(#terminal-2231837046-line-10)">&#160;Milano,&#160;IT&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="264" textLength="12.2" clip-path="url(#terminal-2231837046-line-10)">
</text><text class="terminal-2231837046-r5" x="48.8" y="288.4" textLength="85.4" clip-path="url(#terminal-2231837046-line-11)">&#160;3.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="288.4" textLength="85.4" clip-path="url(#terminal-2231837046-line-11)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="288.4" textLength="292.8" clip-path="url(#terminal-2231837046-line-11)">&#160;wttj-ntt-ltd&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="288.4" textLength="561.2" clip-path="url(#terminal-2231837046-line-11)">&#160;Cybersecurity&#160;Software&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="288.4" textLength="317.2" clip-path="url(#terminal-2231837046-line-11)">&#160;Milan,&#160;Italy&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1390.8" y="288.4" textLength="146.4" clip-path="url(#terminal-2231837046-line-11)">&#160;no&#160;text&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="288.4" textLength="12.2" clip-path="url(#terminal-2231837046-line-11)">
</text><text class="terminal-2231837046-r5" x="48.8" y="312.8" textLength="85.4" clip-path="url(#terminal-2231837046-line-12)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="312.8" textLength="85.4" clip-path="url(#terminal-2231837046-line-12)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="312.8" textLength="292.8" clip-path="url(#terminal-2231837046-line-12)">&#160;EY&#160;Global&#160;Services&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="312.8" textLength="561.2" clip-path="url(#terminal-2231837046-line-12)">&#160;Senior&#160;Backend&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="312.8" textLength="317.2" clip-path="url(#terminal-2231837046-line-12)">&#160;Milano,&#160;IT,&#160;20123&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="312.8" textLength="12.2" clip-path="url(#terminal-2231837046-line-12)">
</text><text class="terminal-2231837046-r5" x="48.8" y="337.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-13)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="337.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-13)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="337.2" textLength="292.8" clip-path="url(#terminal-2231837046-line-13)">&#160;Eight&#160;Sleep&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="337.2" textLength="561.2" clip-path="url(#terminal-2231837046-line-13)">&#160;Senior&#160;Backend&#160;Engineer&#160;(Milan)&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="337.2" textLength="317.2" clip-path="url(#terminal-2231837046-line-13)">&#160;Milan&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="337.2" textLength="12.2" clip-path="url(#terminal-2231837046-line-13)">
</text><text class="terminal-2231837046-r5" x="48.8" y="361.6" textLength="85.4" clip-path="url(#terminal-2231837046-line-14)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="361.6" textLength="85.4" clip-path="url(#terminal-2231837046-line-14)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="361.6" textLength="292.8" clip-path="url(#terminal-2231837046-line-14)">&#160;KPMG&#160;Advisory&#160;Careers&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="361.6" textLength="561.2" clip-path="url(#terminal-2231837046-line-14)">&#160;Senior&#160;Software&#160;Engineer&#160;-&#160;Digital&#160;Assurance&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="361.6" textLength="317.2" clip-path="url(#terminal-2231837046-line-14)">&#160;Milano,&#160;IT&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="361.6" textLength="12.2" clip-path="url(#terminal-2231837046-line-14)">
</text><text class="terminal-2231837046-r7" x="12.2" y="386" textLength="12.2" clip-path="url(#terminal-2231837046-line-15)">●</text><text class="terminal-2231837046-r5" x="48.8" y="386" textLength="85.4" clip-path="url(#terminal-2231837046-line-15)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="386" textLength="85.4" clip-path="url(#terminal-2231837046-line-15)">&#160;auto&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="386" textLength="292.8" clip-path="url(#terminal-2231837046-line-15)">&#160;Kong&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="386" textLength="561.2" clip-path="url(#terminal-2231837046-line-15)">&#160;Senior&#160;Software&#160;Engineer,&#160;AI&#160;Gateway&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="386" textLength="317.2" clip-path="url(#terminal-2231837046-line-15)">&#160;Milano&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="386" textLength="12.2" clip-path="url(#terminal-2231837046-line-15)">
</text><text class="terminal-2231837046-r7" x="12.2" y="410.4" textLength="12.2" clip-path="url(#terminal-2231837046-line-16)">●</text><text class="terminal-2231837046-r5" x="48.8" y="410.4" textLength="85.4" clip-path="url(#terminal-2231837046-line-16)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="410.4" textLength="85.4" clip-path="url(#terminal-2231837046-line-16)">&#160;auto&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="410.4" textLength="292.8" clip-path="url(#terminal-2231837046-line-16)">&#160;satispay&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="410.4" textLength="561.2" clip-path="url(#terminal-2231837046-line-16)">&#160;Senior&#160;Backend&#160;Software&#160;Engineer&#160;-&#160;Consumer&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="410.4" textLength="317.2" clip-path="url(#terminal-2231837046-line-16)">&#160;Milan,&#160;Italy&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="410.4" textLength="12.2" clip-path="url(#terminal-2231837046-line-16)">
</text><text class="terminal-2231837046-r5" x="48.8" y="434.8" textLength="85.4" clip-path="url(#terminal-2231837046-line-17)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="434.8" textLength="85.4" clip-path="url(#terminal-2231837046-line-17)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="434.8" textLength="292.8" clip-path="url(#terminal-2231837046-line-17)">&#160;Pwc&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="434.8" textLength="561.2" clip-path="url(#terminal-2231837046-line-17)">&#160;Senior&#160;Software&#160;Engineer&#160;AI-driven&#160;-&#160;MILANO&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="434.8" textLength="317.2" clip-path="url(#terminal-2231837046-line-17)">&#160;Milan&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="434.8" textLength="12.2" clip-path="url(#terminal-2231837046-line-17)">
</text><text class="terminal-2231837046-r5" x="48.8" y="459.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-18)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="459.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-18)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="459.2" textLength="292.8" clip-path="url(#terminal-2231837046-line-18)">&#160;Pwc&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="459.2" textLength="561.2" clip-path="url(#terminal-2231837046-line-18)">&#160;Software&#160;Engineer&#160;Intern&#160;-&#160;Milano&#160;[DIG]&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="459.2" textLength="317.2" clip-path="url(#terminal-2231837046-line-18)">&#160;Milan&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="459.2" textLength="12.2" clip-path="url(#terminal-2231837046-line-18)">
</text><text class="terminal-2231837046-r5" x="48.8" y="483.6" textLength="85.4" clip-path="url(#terminal-2231837046-line-19)">&#160;2.5&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="483.6" textLength="85.4" clip-path="url(#terminal-2231837046-line-19)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="483.6" textLength="561.2" clip-path="url(#terminal-2231837046-line-19)">&#160;Software&#160;Engineer&#160;-&#160;Insurance&#160;Domain&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="483.6" textLength="317.2" clip-path="url(#terminal-2231837046-line-19)">&#160;Milan,&#160;Milano\Lombardia,&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="483.6" textLength="12.2" clip-path="url(#terminal-2231837046-line-19)">
</text><text class="terminal-2231837046-r5" x="48.8" y="508" textLength="85.4" clip-path="url(#terminal-2231837046-line-20)">&#160;2.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="508" textLength="85.4" clip-path="url(#terminal-2231837046-line-20)">&#160;auto&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="508" textLength="292.8" clip-path="url(#terminal-2231837046-line-20)">&#160;B&amp;A&#160;Consulting&#160;Srl&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="508" textLength="561.2" clip-path="url(#terminal-2231837046-line-20)">&#160;AI&#160;&amp;&#160;Python&#160;Developer&#160;–&#160;RAG&#160;&amp;&#160;Agentic&#160;AI&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="508" textLength="317.2" clip-path="url(#terminal-2231837046-line-20)">&#160;Milano,&#160;Nord&#160;Italia,&#160;IT&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="508" textLength="12.2" clip-path="url(#terminal-2231837046-line-20)">
</text><text class="terminal-2231837046-r5" x="48.8" y="532.4" textLength="85.4" clip-path="url(#terminal-2231837046-line-21)">&#160;2.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="532.4" textLength="85.4" clip-path="url(#terminal-2231837046-line-21)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="532.4" textLength="292.8" clip-path="url(#terminal-2231837046-line-21)">&#160;Iliad&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="532.4" textLength="561.2" clip-path="url(#terminal-2231837046-line-21)">&#160;Software&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="532.4" textLength="317.2" clip-path="url(#terminal-2231837046-line-21)">&#160;Milano&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="532.4" textLength="12.2" clip-path="url(#terminal-2231837046-line-21)">
</text><text class="terminal-2231837046-r5" x="48.8" y="556.8" textLength="85.4" clip-path="url(#terminal-2231837046-line-22)">&#160;1.5&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="556.8" textLength="85.4" clip-path="url(#terminal-2231837046-line-22)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="556.8" textLength="292.8" clip-path="url(#terminal-2231837046-line-22)">&#160;IKONS&#160;GROUP&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="556.8" textLength="561.2" clip-path="url(#terminal-2231837046-line-22)">&#160;4&#160;Python&#160;Developer&#160;Sr&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="556.8" textLength="317.2" clip-path="url(#terminal-2231837046-line-22)">&#160;Milano&#160;-&#160;1&#160;gg&#160;a&#160;settiman&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="556.8" textLength="12.2" clip-path="url(#terminal-2231837046-line-22)">
</text><text class="terminal-2231837046-r5" x="48.8" y="581.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-23)">&#160;1.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="581.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-23)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="581.2" textLength="292.8" clip-path="url(#terminal-2231837046-line-23)">&#160;Worldline&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="581.2" textLength="561.2" clip-path="url(#terminal-2231837046-line-23)">&#160;Senior&#160;Software&#160;Engineer&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="581.2" textLength="317.2" clip-path="url(#terminal-2231837046-line-23)">&#160;Milano,&#160;Lombardia,&#160;IT&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="581.2" textLength="12.2" clip-path="url(#terminal-2231837046-line-23)">
</text><text class="terminal-2231837046-r5" x="48.8" y="605.6" textLength="85.4" clip-path="url(#terminal-2231837046-line-24)">&#160;1.0&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="134.2" y="605.6" textLength="85.4" clip-path="url(#terminal-2231837046-line-24)">&#160;link&#160;&#160;</text><text class="terminal-2231837046-r5" x="219.6" y="605.6" textLength="292.8" clip-path="url(#terminal-2231837046-line-24)">&#160;Pwc&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="605.6" textLength="561.2" clip-path="url(#terminal-2231837046-line-24)">&#160;Software&#160;Engineer&#160;Associate&#160;-&#160;MILANO&#160;[DIG]&#160;&#160;&#160;</text><text class="terminal-2231837046-r5" x="1073.6" y="605.6" textLength="317.2" clip-path="url(#terminal-2231837046-line-24)">&#160;Milan&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="605.6" textLength="12.2" clip-path="url(#terminal-2231837046-line-24)">
</text><text class="terminal-2231837046-r8" x="1415.2" y="630" textLength="12.2" clip-path="url(#terminal-2231837046-line-25)">▊</text><text class="terminal-2231837046-r1" x="1561.6" y="630" textLength="12.2" clip-path="url(#terminal-2231837046-line-25)">
</text><text class="terminal-2231837046-r9" x="0" y="654.4" textLength="1561.6" clip-path="url(#terminal-2231837046-line-26)">────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────</text><text class="terminal-2231837046-r1" x="1561.6" y="654.4" textLength="12.2" clip-path="url(#terminal-2231837046-line-26)">
</text><text class="terminal-2231837046-r5" x="12.2" y="678.8" textLength="854" clip-path="url(#terminal-2231837046-line-27)">422&#160;postings&#160;fit&#160;your&#160;search,&#160;of&#160;10,213,066&#160;in&#160;the&#160;job&#160;database&#160;built&#160;</text><text class="terminal-2231837046-r1" x="1561.6" y="678.8" textLength="12.2" clip-path="url(#terminal-2231837046-line-27)">
</text><text class="terminal-2231837046-r5" x="12.2" y="703.2" textLength="231.8" clip-path="url(#terminal-2231837046-line-28)">2026-11-05;&#160;422&#160;new</text><text class="terminal-2231837046-r1" x="1561.6" y="703.2" textLength="12.2" clip-path="url(#terminal-2231837046-line-28)">
</text><text class="terminal-2231837046-r5" x="12.2" y="727.6" textLength="963.8" clip-path="url(#terminal-2231837046-line-29)">Jev&#160;picked&#160;25&#160;postings&#160;to&#160;score.&#160;Press&#160;m&#160;for&#160;the&#160;next&#160;batch&#160;when&#160;they&#160;are&#160;done.</text><text class="terminal-2231837046-r1" x="1561.6" y="727.6" textLength="12.2" clip-path="url(#terminal-2231837046-line-29)">
</text><text class="terminal-2231837046-r1" x="1561.6" y="752" textLength="12.2" clip-path="url(#terminal-2231837046-line-30)">
</text><text class="terminal-2231837046-r1" x="1561.6" y="776.4" textLength="12.2" clip-path="url(#terminal-2231837046-line-31)">
</text><text class="terminal-2231837046-r1" x="1561.6" y="800.8" textLength="12.2" clip-path="url(#terminal-2231837046-line-32)">
</text><text class="terminal-2231837046-r10" x="0" y="825.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-33)">&#160;space&#160;</text><text class="terminal-2231837046-r5" x="85.4" y="825.2" textLength="85.4" clip-path="url(#terminal-2231837046-line-33)">Select&#160;</text><text class="terminal-2231837046-r10" x="170.8" y="825.2" textLength="36.6" clip-path="url(#terminal-2231837046-line-33)">&#160;a&#160;</text><text class="terminal-2231837046-r5" x="207.4" y="825.2" textLength="73.2" clip-path="url(#terminal-2231837046-line-33)">Apply&#160;</text><text class="terminal-2231837046-r10" x="280.6" y="825.2" textLength="36.6" clip-path="url(#terminal-2231837046-line-33)">&#160;s&#160;</text><text class="terminal-2231837046-r5" x="317.2" y="825.2" textLength="61" clip-path="url(#terminal-2231837046-line-33)">Sent&#160;</text><text class="terminal-2231837046-r10" x="378.2" y="825.2" textLength="36.6" clip-path="url(#terminal-2231837046-line-33)">&#160;o&#160;</text><text class="terminal-2231837046-r5" x="414.8" y="825.2" textLength="61" clip-path="url(#terminal-2231837046-line-33)">Open&#160;</text><text class="terminal-2231837046-r10" x="475.8" y="825.2" textLength="36.6" clip-path="url(#terminal-2231837046-line-33)">&#160;m&#160;</text><text class="terminal-2231837046-r5" x="512.4" y="825.2" textLength="61" clip-path="url(#terminal-2231837046-line-33)">More&#160;</text><text class="terminal-2231837046-r10" x="573.4" y="825.2" textLength="36.6" clip-path="url(#terminal-2231837046-line-33)">&#160;r&#160;</text><text class="terminal-2231837046-r5" x="610" y="825.2" textLength="134.2" clip-path="url(#terminal-2231837046-line-33)">New&#160;resume&#160;</text><text class="terminal-2231837046-r10" x="744.2" y="825.2" textLength="36.6" clip-path="url(#terminal-2231837046-line-33)">&#160;l&#160;</text><text class="terminal-2231837046-r5" x="780.8" y="825.2" textLength="97.6" clip-path="url(#terminal-2231837046-line-33)">Sign&#160;in&#160;</text><text class="terminal-2231837046-r10" x="878.4" y="825.2" textLength="36.6" clip-path="url(#terminal-2231837046-line-33)">&#160;q&#160;</text><text class="terminal-2231837046-r5" x="915" y="825.2" textLength="61" clip-path="url(#terminal-2231837046-line-33)">Quit&#160;</text>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 76 KiB

+1 -1
View File
@@ -6,7 +6,7 @@ What AIHawk can do on each site, from the real forms it has been run on. Posting
|---|---|---|---|
| Greenhouse (boards and job-boards hosts, EU too) | ~200k | sent and confirmed on a real form | One real send, Bottomline (one send only). Robinhood and Adyen stopped at required questions the CV and answers do not cover; one Robinhood run failed. |
| Ashby (jobs.ashbyhq.com) | ~76k | sent and confirmed on a real form | One real send, Mollie (one send only). Snowflake and Glia stopped at required questions; Lemonade's posting was closed; on ElevenLabs and XYZ Reality the Submit button stayed disabled. |
| Lever (jobs.lever.co) | ~101k | filled on real forms, send not confirmed | Two clicks, neither confirmed by the page's words. On Audinate the address moved to `/thanks`, whose page says "Application submitted!" to any visitor, but the text had been read before the page changed, a timing fault since fixed. On CesiumAstro nothing confirmed it. Other forms stopped at required questions or at an attestation. |
| Lever (jobs.lever.co, jobs.eu.lever.co) | ~101k | filled on real forms, send not confirmed | Two clicks, neither confirmed by the page's words. On Audinate the address moved to `/thanks`, whose page says "Application submitted!" to any visitor, but the text had been read before the page changed, a timing fault since fixed. On CesiumAstro nothing confirmed it. Other forms stopped at required questions, or at the right to work or a background check, which a test cannot answer. |
| JazzHR (applytojob.com) | ~154k | stops at a captcha most of the time | reCAPTCHA did not pass with a click on 5 postings; it often turned into an image puzzle. |
| BambooHR (bamboohr.com) | ~87k | stops at a captcha most of the time | reCAPTCHA did not pass with a click on 5 postings; it often turned into an image puzzle. |
| Personio (jobs.personio.de, jobs.personio.com) | ~64k | stops at a captcha about half the time | Turnstile passed on 2 of 4 postings. A real Allgeier Inovar form ended blocked. |
+1 -1
View File
@@ -1,6 +1,6 @@
---
name: lever
hosts: [jobs.lever.co]
hosts: [jobs.lever.co, jobs.eu.lever.co]
apply_path: /apply
---
The form is one page, under the heading "Submit your application". A closed posting shows "Sorry, we couldn't find anything here" (a 404 page): report the form as blocked.
+6 -1
View File
@@ -153,7 +153,12 @@ class Session:
async def one(item: Stored) -> None:
async with limit:
try:
report = await score_job(self.client, self.config.judge_model, item.job, cv, self.config.goals)
job = item.job
if not job.description.strip():
# Many sources publish no text, and a score from the title alone says little: the posting's own page often has it.
job = await asyncio.to_thread(with_description, job)
self.store.set_description(job.id, job.description)
report = await score_job(self.client, self.config.judge_model, job, cv, self.config.goals)
except Exception as error:
# One posting that cannot be judged must not stop the others.
if refused(error):
+22
View File
@@ -6,6 +6,7 @@ import asyncio
import json
from collections.abc import AsyncIterator
from contextlib import asynccontextmanager
from dataclasses import replace
from pathlib import Path
from types import SimpleNamespace
from typing import Any
@@ -786,3 +787,24 @@ def test_a_cv_that_cannot_be_written_fails_that_job_alone(home: Path, resume: Pa
assert outcome.status == "failed" and "the model is down" in outcome.summary
assert session.store.get("one").status == "failed" # type: ignore[union-attr]
session.close()
def test_a_posting_with_no_stored_text_is_scored_on_its_own_pages_text(home: Path, resume: Path, monkeypatch: pytest.MonkeyPatch) -> None:
session = Session(home)
session._client = ScriptedModelForApp() # type: ignore[assignment]
asyncio.run(session.load_resume(resume))
session.store.add(Job("bare", "Firm", "Python Engineer", "Milan", "https://a.example/1", "https://a.example/1", "", "", 1.0))
session.store.add(Job("told", "Firm", "Python Engineer", "Milan", "https://a.example/2", "https://a.example/2", "Stored text.", "", 1.0))
fetched: list[str] = []
def page(job: Job) -> Job:
fetched.append(job.id)
return replace(job, description="The text of its page.")
monkeypatch.setattr(session_module, "with_description", page)
asyncio.run(session.score([session.store.get("bare"), session.store.get("told")], lambda: None, lambda _: None)) # type: ignore[list-item]
assert fetched == ["bare"]
assert session.store.get("bare").job.description == "The text of its page." # type: ignore[union-attr]
asked = " ".join(request["messages"][1]["content"] for request in session._client.requests) # type: ignore[union-attr]
assert "The text of its page." in asked and "Stored text." in asked
session.close()