chore: archive stale CV exports and clear finished audit tasks
- Move stale CV exports (polo-cv*.html, polo-new-cv.*, rafael-polo-cv*) to cv/old/ — kept polo.md as the single canonical source - Delete motivation1.md (Roche) and motivation-adobe.md — both were one-off letters from the CV audit, superseded - Delete homework.md — stale scratch notes - Mark Priority 1-3 of the CV audit as executed in tasks/to-update.md; only the behavioural channel-shift checklist remains open
This commit is contained in:
@@ -0,0 +1,234 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Rafael Polo - CV</title>
|
||||||
|
<style>
|
||||||
|
@page {
|
||||||
|
size: 8.2681in 11.6929in;
|
||||||
|
margin: 0.5in;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
font-family: Calibri, Liberation Sans, sans-serif;
|
||||||
|
font-size: 11pt;
|
||||||
|
line-height: 1.2;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.container {
|
||||||
|
display: table;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.left-col {
|
||||||
|
display: table-cell;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.title {
|
||||||
|
font-size: 24pt;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 0.05in;
|
||||||
|
}
|
||||||
|
.subtitle {
|
||||||
|
font-size: 11pt;
|
||||||
|
font-style: italic;
|
||||||
|
margin-bottom: 0.15in;
|
||||||
|
color: #444;
|
||||||
|
}
|
||||||
|
table.personal {
|
||||||
|
width: 100%;
|
||||||
|
border-collapse: collapse;
|
||||||
|
margin-bottom: 0.2in;
|
||||||
|
}
|
||||||
|
table.personal td {
|
||||||
|
padding: 0.02in 0.05in;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
table.personal .label {
|
||||||
|
font-weight: bold;
|
||||||
|
color: #333;
|
||||||
|
width: 1in;
|
||||||
|
}
|
||||||
|
table.personal .header-row td {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 11pt;
|
||||||
|
text-transform: uppercase;
|
||||||
|
border-bottom: 1px solid #999;
|
||||||
|
padding-bottom: 0.05in;
|
||||||
|
}
|
||||||
|
h3 {
|
||||||
|
font-size: 11pt;
|
||||||
|
font-weight: bold;
|
||||||
|
text-transform: uppercase;
|
||||||
|
letter-spacing: 0.05em;
|
||||||
|
margin: 0.15in 0 0.08in 0;
|
||||||
|
border-bottom: 1px solid #999;
|
||||||
|
padding-bottom: 0.03in;
|
||||||
|
}
|
||||||
|
ul {
|
||||||
|
margin: 0.05in 0;
|
||||||
|
padding-left: 0.15in;
|
||||||
|
}
|
||||||
|
li {
|
||||||
|
margin-bottom: 0.04in;
|
||||||
|
font-size: 10pt;
|
||||||
|
}
|
||||||
|
.job-item {
|
||||||
|
margin-bottom: 0.08in;
|
||||||
|
}
|
||||||
|
.job-title {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 10pt;
|
||||||
|
}
|
||||||
|
.job-meta {
|
||||||
|
font-style: italic;
|
||||||
|
font-size: 9pt;
|
||||||
|
color: #555;
|
||||||
|
}
|
||||||
|
.job-desc {
|
||||||
|
font-style: italic;
|
||||||
|
font-size: 10pt;
|
||||||
|
color: #444;
|
||||||
|
margin-left: 0.1in;
|
||||||
|
}
|
||||||
|
.edu-item {
|
||||||
|
margin-bottom: 0.05in;
|
||||||
|
}
|
||||||
|
.edu-degree {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 10pt;
|
||||||
|
}
|
||||||
|
.edu-school {
|
||||||
|
font-style: italic;
|
||||||
|
font-size: 10pt;
|
||||||
|
}
|
||||||
|
.skill-item {
|
||||||
|
font-size: 10pt;
|
||||||
|
margin-bottom: 0.02in;
|
||||||
|
}
|
||||||
|
.lang-item {
|
||||||
|
font-size: 10pt;
|
||||||
|
margin-bottom: 0.02in;
|
||||||
|
}
|
||||||
|
.footer {
|
||||||
|
font-size: 9pt;
|
||||||
|
color: #666;
|
||||||
|
margin-top: 0.2in;
|
||||||
|
padding-top: 0.1in;
|
||||||
|
border-top: 1px solid #ccc;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="title">Rafael Polo</div>
|
||||||
|
<div class="subtitle">Senior Software Engineer — Platform, Data & AI</div>
|
||||||
|
|
||||||
|
<table class="personal">
|
||||||
|
<tr>
|
||||||
|
<td colspan="2" class="header-row">Personal</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">First name:</td>
|
||||||
|
<td>Rafael</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">Last name:</td>
|
||||||
|
<td>Polo</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">Citizenship:</td>
|
||||||
|
<td>Portuguese (EU) · Brazilian — no work permit required</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">Address:</td>
|
||||||
|
<td>Basel, 4055, Switzerland</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">Email:</td>
|
||||||
|
<td>rafael@extrapolo.com</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">Web:</td>
|
||||||
|
<td>linkedin.com/in/rafaelpolo<br>extrapolo.com</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<h3>Formal Education</h3>
|
||||||
|
<ul>
|
||||||
|
<li class="edu-item">
|
||||||
|
<span class="edu-degree"><em><strong>Postgraduate in Data Science for Finance</strong></em> – 2021</span><br>
|
||||||
|
<span class="edu-school">NOVA IMS Information Management School, Lisbon</span>
|
||||||
|
</li>
|
||||||
|
<li class="edu-item">
|
||||||
|
<span class="edu-degree"><em><strong>Master in Information Systems</strong></em> – 2010–2012</span><br>
|
||||||
|
<span class="edu-school">PPGI/UNIRIO — Knowledge Representation & Reasoning</span>
|
||||||
|
</li>
|
||||||
|
<li class="edu-item">
|
||||||
|
<span class="edu-degree"><em><strong>Bachelor in Computer Science</strong></em> – 2004–2009</span><br>
|
||||||
|
<span class="edu-school">Metodista Bennett, Rio de Janeiro</span>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Relevant Professional Experience</h3>
|
||||||
|
<ul>
|
||||||
|
<li class="job-item">
|
||||||
|
<span class="job-title">Swisscom</span> – <span class="job-meta">2024–2025 – Zürich, Switzerland</span><br>
|
||||||
|
<span class="job-desc"><strong>DevOps Engineer</strong> developing platforms for Telecommunication Operations.</span>
|
||||||
|
</li>
|
||||||
|
<li class="job-item">
|
||||||
|
<span class="job-title">EDGE Empower®</span> – <span class="job-meta">2024–2025 – Baar, Switzerland</span><br>
|
||||||
|
<span class="job-desc"><strong>Senior Technical Lead</strong> managing projects and external UX & Dev Teams for a SaaS Product.</span>
|
||||||
|
</li>
|
||||||
|
<li class="job-item">
|
||||||
|
<span class="job-title">ExtraPolo — Independent Consulting</span> – <span class="job-meta">2010–2022 – Rio de Janeiro · Berlin · Athens · Lisbon</span><br>
|
||||||
|
<span class="job-desc">40+ projects across civic tech, data journalism, open-source platforms and interactive installations for public and private clients.</span>
|
||||||
|
</li>
|
||||||
|
<li class="job-item">
|
||||||
|
<span class="job-title">Moedax Digital Services</span> – <span class="job-meta">2018–2021 – Lisbon · Rio de Janeiro</span><br>
|
||||||
|
<span class="job-desc"><strong>Founder & CTO</strong> – Fintech startup connecting CBDC digital currency with KYC compliance automation.</span>
|
||||||
|
</li>
|
||||||
|
<li class="job-item">
|
||||||
|
<span class="job-title">GFOSS.eu / Code + Create</span> – <span class="job-meta">2017–2018 – Athens, Greece</span><br>
|
||||||
|
<span class="job-desc"><strong>Web Programming Teacher</strong> – taught HTML, CSS, jQuery to refugee and local youth.</span>
|
||||||
|
</li>
|
||||||
|
<li class="job-item">
|
||||||
|
<span class="job-title">Tactical Tech Collective</span> – <span class="job-meta">2014–2016 – Berlin, Germany</span><br>
|
||||||
|
<span class="job-desc"><strong>Full-Stack Web Architect</strong> – investigative data tools under Exposing the Invisible team.</span>
|
||||||
|
</li>
|
||||||
|
<li class="job-item">
|
||||||
|
<span class="job-title">Trommsdorf + Drüner</span> – <span class="job-meta">2013–2014 – Berlin, Germany</span><br>
|
||||||
|
<span class="job-desc"><strong>Full-Stack Engineer</strong> – Innovation Team developing Business Intelligence dashboards.</span>
|
||||||
|
</li>
|
||||||
|
<li class="job-item">
|
||||||
|
<span class="job-title">Cortex Intelligence</span> – <span class="job-meta">2007–2008 – Rio de Janeiro, Brazil</span><br>
|
||||||
|
<span class="job-desc"><strong>Developer</strong> – Competitive Intelligence and Data Mining R&D team.</span>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Certifications</h3>
|
||||||
|
<ul>
|
||||||
|
<li class="skill-item">Swiss Federal Act on Data Protection (nFADP)</li>
|
||||||
|
<li class="skill-item">Gen AI Foundational Models — NLP & LLMs</li>
|
||||||
|
<li class="skill-item">AI Agents using RAG and LangChain</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Relevant Tech Skills</h3>
|
||||||
|
<ul>
|
||||||
|
<li class="skill-item"><strong>Languages & Frameworks:</strong> Python · Ruby on Rails · TypeScript · React · Java</li>
|
||||||
|
<li class="skill-item"><strong>DevOps & Infra:</strong> Docker · Kubernetes · CI/CD · AWS · Linux · Git</li>
|
||||||
|
<li class="skill-item"><strong>Data & AI:</strong> SQL · ETL · Data Engineering · RAG · LangChain · LLM integrations</li>
|
||||||
|
<li class="skill-item"><strong>Architecture:</strong> REST APIs · MVC · OOP · UML · System Design · Web Crawling</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Natural Languages</h3>
|
||||||
|
<ul>
|
||||||
|
<li class="lang-item">Native Brazilian Portuguese</li>
|
||||||
|
<li class="lang-item">Full professional English</li>
|
||||||
|
<li class="lang-item">Full professional Spanish</li>
|
||||||
|
<li class="lang-item">German B1 – TELC certified · 3 yrs Berlin + 3 yrs Basel</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<div class="footer">
|
||||||
|
References available upon request · CV updated May 2026
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -0,0 +1,196 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Rafael Polo - CV</title>
|
||||||
|
<style>
|
||||||
|
@page {
|
||||||
|
size: 8.2681in 11.6929in;
|
||||||
|
margin: 0.5in;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
font-family: Liberation Sans, Carlito, Georgia, serif;
|
||||||
|
font-size: 11pt;
|
||||||
|
line-height: 1.4;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.title {
|
||||||
|
font-size: 36pt;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 0.1in;
|
||||||
|
}
|
||||||
|
.subtitle {
|
||||||
|
font-size: 14pt;
|
||||||
|
margin-bottom: 0.3in;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
h1 {
|
||||||
|
font-size: 24pt;
|
||||||
|
font-weight: bold;
|
||||||
|
margin: 0.2in 0 0.1in 0;
|
||||||
|
border-bottom: 1px solid #333;
|
||||||
|
padding-bottom: 0.05in;
|
||||||
|
}
|
||||||
|
h2 {
|
||||||
|
font-size: 18pt;
|
||||||
|
font-weight: bold;
|
||||||
|
margin: 0.15in 0 0.08in 0;
|
||||||
|
}
|
||||||
|
h3 {
|
||||||
|
font-size: 14pt;
|
||||||
|
font-weight: bold;
|
||||||
|
margin: 0.1in 0 0.05in 0;
|
||||||
|
}
|
||||||
|
.section {
|
||||||
|
margin-bottom: 0.15in;
|
||||||
|
}
|
||||||
|
.personalinline {
|
||||||
|
font-size: 10pt;
|
||||||
|
margin-bottom: 0.2in;
|
||||||
|
}
|
||||||
|
.personalinline span {
|
||||||
|
margin-right: 0.3in;
|
||||||
|
}
|
||||||
|
.key-value {
|
||||||
|
display: flex;
|
||||||
|
margin: 0.03in 0;
|
||||||
|
}
|
||||||
|
.key {
|
||||||
|
font-weight: bold;
|
||||||
|
width: 1.5in;
|
||||||
|
}
|
||||||
|
.value {
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
ul {
|
||||||
|
margin: 0.05in 0;
|
||||||
|
padding-left: 0.2in;
|
||||||
|
}
|
||||||
|
li {
|
||||||
|
margin-bottom: 0.03in;
|
||||||
|
}
|
||||||
|
.small {
|
||||||
|
font-size: 10pt;
|
||||||
|
}
|
||||||
|
.experience-item {
|
||||||
|
margin-bottom: 0.1in;
|
||||||
|
}
|
||||||
|
.exp-header {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.exp-meta {
|
||||||
|
font-style: italic;
|
||||||
|
font-size: 10pt;
|
||||||
|
}
|
||||||
|
.exp-desc {
|
||||||
|
margin-left: 0.2in;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="title">Rafael Polo</div>
|
||||||
|
<div class="subtitle">Senior Software Engineer — Platform, Data & AI</div>
|
||||||
|
|
||||||
|
<div class="personalinline">
|
||||||
|
<span>Basel, 4055, Switzerland</span>
|
||||||
|
<span>rafael@extrapolo.com</span>
|
||||||
|
<span>linkedin.com/in/rafaelpolo</span>
|
||||||
|
<span>extrapolo.com</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="personalinline">
|
||||||
|
<span>Portuguese (EU) · Brazilian — no work permit required</span>
|
||||||
|
<span>20+ years building production systems across Switzerland, Germany, Greece and Brazil</span>
|
||||||
|
<span>Fluent English · German B1 TELC (3 yrs Berlin + 3 yrs Basel) · EU citizen, immediately available</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="section">
|
||||||
|
<h1>P R O F E S S I O N A L E X P E R I E N C E</h1>
|
||||||
|
|
||||||
|
<div class="experience-item">
|
||||||
|
<div class="exp-header">Swisscom</div>
|
||||||
|
<div class="exp-meta">DevOps Engineer · Zürich, Switzerland</div>
|
||||||
|
<div class="exp-desc">Modernization of mission-critical internal platforms & CI/CD pipelines for high-availability Telecom infrastructure.</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="experience-item">
|
||||||
|
<div class="exp-header">EDGE Empower®</div>
|
||||||
|
<div class="exp-meta">Senior Technical Lead · Baar, Switzerland · 2024 – 2025</div>
|
||||||
|
<div class="exp-desc">Built a PayTool cutting processing time by 98%; reduced CI/CD pipeline from 14 → 4 minutes; managed 3 developers and a UX designer for a SaaS product.</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="experience-item">
|
||||||
|
<div class="exp-header">ExtraPolo — Independent Consulting</div>
|
||||||
|
<div class="exp-meta">Software Engineer & Consultant · Rio de Janeiro · Berlin · Athens · Lisbon · 2010 – 2022</div>
|
||||||
|
<div class="exp-desc">40+ projects across civic tech, data journalism, open-source platforms and interactive installations for public and private clients.</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="experience-item">
|
||||||
|
<div class="exp-header">Moedax Digital Services</div>
|
||||||
|
<div class="exp-meta">Founder & CTO · Lisbon · Rio de Janeiro · 2018 – 2021</div>
|
||||||
|
<div class="exp-desc">Fintech startup connecting CBDC digital currency with KYC compliance automation; built data pipelines and banking integrations in Python.</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="experience-item">
|
||||||
|
<div class="exp-header">GFOSS.eu / Code + Create</div>
|
||||||
|
<div class="exp-meta">Web Programming Teacher · Athens, Greece · 2017 – 2018</div>
|
||||||
|
<div class="exp-desc">Taught web programming (HTML, CSS, jQuery) to refugee and local youth through the EU-funded Code + Create initiative.</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="experience-item">
|
||||||
|
<div class="exp-header">Tactical Tech Collective</div>
|
||||||
|
<div class="exp-meta">Full-Stack Web Architect · Berlin, Germany · Dec 2014 – Jun 2016</div>
|
||||||
|
<div class="exp-desc">Built investigative data tools and platforms under the Exposing the Invisible team (Ruby on Rails, data visualisation).</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="experience-item">
|
||||||
|
<div class="exp-header">Trommsdorff + Drüner</div>
|
||||||
|
<div class="exp-meta">Full-Stack Engineer · Berlin, Germany</div>
|
||||||
|
<div class="exp-desc">Innovation team — Business Intelligence dashboards for marketing consultancy clients.</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="experience-item">
|
||||||
|
<div class="exp-header">Cortex Intelligence</div>
|
||||||
|
<div class="exp-meta">Developer · Rio de Janeiro, Brazil</div>
|
||||||
|
<div class="exp-desc">Competitive Intelligence and Data Mining R&D team.</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="section">
|
||||||
|
<h1>E D U C A T I O N</h1>
|
||||||
|
<div class="key-value"><span class="key">Postgraduate in Data Science for Finance</span><span class="value">NOVA IMS Information Management School, Lisbon — 2021</span></div>
|
||||||
|
<div class="key-value"><span class="key">Master in Information Systems</span><span class="value">PPGI/UNIRIO — Knowledge Representation & Reasoning — 2010–2012</span></div>
|
||||||
|
<div class="key-value"><span class="key">Bachelor in Computer Science</span><span class="value">Metodista Bennett, Rio de Janeiro — 2004–2009</span></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="section">
|
||||||
|
<h1>L A N G U A G E S</h1>
|
||||||
|
<div class="key-value"><span class="key">Portuguese</span><span class="value">native</span></div>
|
||||||
|
<div class="key-value"><span class="key">English</span><span class="value">full professional</span></div>
|
||||||
|
<div class="key-value"><span class="key">Spanish</span><span class="value">full professional</span></div>
|
||||||
|
<div class="key-value"><span class="key">German</span><span class="value">B1 — TELC certified · 3 yrs Berlin + 3 yrs Basel</span></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="section">
|
||||||
|
<h1>C E R T I F I C A T I O N S</h1>
|
||||||
|
<ul>
|
||||||
|
<li>Swiss Federal Act on Data Protection (nFADP)</li>
|
||||||
|
<li>Gen AI Foundational Models — NLP & LLMs</li>
|
||||||
|
<li>AI Agents using RAG and LangChain</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="section">
|
||||||
|
<h1>T E C H S K I L L S</h1>
|
||||||
|
<div class="key-value"><span class="key">Languages & Frameworks</span><span class="value">Python · Ruby on Rails · TypeScript · React · Java</span></div>
|
||||||
|
<div class="key-value"><span class="key">DevOps & Infra</span><span class="value">Docker · Kubernetes · CI/CD · AWS · Linux · Git</span></div>
|
||||||
|
<div class="key-value"><span class="key">Data & AI</span><span class="value">SQL · ETL · Data Engineering · RAG · LangChain · LLM integrations · Data Science</span></div>
|
||||||
|
<div class="key-value"><span class="key">Architecture</span><span class="value">REST APIs · MVC · OOP · UML · System Design · Web Crawling & Scraping</span></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="small">
|
||||||
|
References available upon request · CV updated May 2026
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -0,0 +1,243 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>Rafael Polo - CV</title>
|
||||||
|
<style>
|
||||||
|
@page {
|
||||||
|
size: 8.2681in 11.6929in;
|
||||||
|
margin: 0.5in;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
font-family: Liberation Sans, Carlito, Calibri, Georgia, sans-serif;
|
||||||
|
font-size: 11pt;
|
||||||
|
line-height: 1.3;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.container {
|
||||||
|
display: table;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.left-col {
|
||||||
|
display: table-cell;
|
||||||
|
width: 65%;
|
||||||
|
padding-right: 0.2in;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
.right-col {
|
||||||
|
display: table-cell;
|
||||||
|
width: 35%;
|
||||||
|
vertical-align: top;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
.photo {
|
||||||
|
width: 2in;
|
||||||
|
height: auto;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
}
|
||||||
|
.title {
|
||||||
|
font-size: 24pt;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 0.05in;
|
||||||
|
}
|
||||||
|
.subtitle {
|
||||||
|
font-size: 12pt;
|
||||||
|
font-style: italic;
|
||||||
|
margin-bottom: 0.2in;
|
||||||
|
color: #444;
|
||||||
|
}
|
||||||
|
h3 {
|
||||||
|
font-size: 12pt;
|
||||||
|
font-weight: bold;
|
||||||
|
margin: 0.15in 0 0.08in 0;
|
||||||
|
text-transform: uppercase;
|
||||||
|
letter-spacing: 0.05in;
|
||||||
|
border-bottom: 1px solid #999;
|
||||||
|
padding-bottom: 0.03in;
|
||||||
|
}
|
||||||
|
.personal-table {
|
||||||
|
width: 100%;
|
||||||
|
border-collapse: collapse;
|
||||||
|
}
|
||||||
|
.personal-table td {
|
||||||
|
padding: 0.02in 0;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
.personal-table .label {
|
||||||
|
font-weight: bold;
|
||||||
|
width: 1.2in;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
.personal-table .header {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 12pt;
|
||||||
|
text-transform: uppercase;
|
||||||
|
letter-spacing: 0.05in;
|
||||||
|
padding-bottom: 0.05in;
|
||||||
|
}
|
||||||
|
.section-header {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 11pt;
|
||||||
|
text-transform: uppercase;
|
||||||
|
letter-spacing: 0.03in;
|
||||||
|
margin-top: 0.15in;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
ul {
|
||||||
|
margin: 0.05in 0;
|
||||||
|
padding-left: 0.15in;
|
||||||
|
}
|
||||||
|
li {
|
||||||
|
margin-bottom: 0.04in;
|
||||||
|
font-size: 10pt;
|
||||||
|
}
|
||||||
|
.job-title {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.job-meta {
|
||||||
|
font-style: italic;
|
||||||
|
font-size: 10pt;
|
||||||
|
}
|
||||||
|
.job-company {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.job-desc {
|
||||||
|
font-style: italic;
|
||||||
|
font-size: 10pt;
|
||||||
|
margin-left: 0.1in;
|
||||||
|
}
|
||||||
|
.edu-item {
|
||||||
|
font-size: 10pt;
|
||||||
|
margin-bottom: 0.03in;
|
||||||
|
}
|
||||||
|
.edu-school {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
.skill-category {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 10pt;
|
||||||
|
margin-top: 0.05in;
|
||||||
|
}
|
||||||
|
.skill-list {
|
||||||
|
font-size: 10pt;
|
||||||
|
margin-left: 0.1in;
|
||||||
|
}
|
||||||
|
.footer {
|
||||||
|
font-size: 9pt;
|
||||||
|
color: #666;
|
||||||
|
margin-top: 0.3in;
|
||||||
|
border-top: 1px solid #ccc;
|
||||||
|
padding-top: 0.1in;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div class="container">
|
||||||
|
<div class="left-col">
|
||||||
|
<p class="title">Rafael Polo</p>
|
||||||
|
<p class="subtitle">Senior Software Engineer — Platform, Data & AI</p>
|
||||||
|
|
||||||
|
<table class="personal-table">
|
||||||
|
<tr>
|
||||||
|
<td class="header" colspan="2">Personal</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">Address:</td>
|
||||||
|
<td>Basel, 4055, Switzerland</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">Email:</td>
|
||||||
|
<td>rafael@extrapolo.com</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">LinkedIn:</td>
|
||||||
|
<td>linkedin.com/in/rafaelpolo</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">Web:</td>
|
||||||
|
<td>extrapolo.com</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">Citizenship:</td>
|
||||||
|
<td>Portuguese (EU) · Brazilian — no work permit required</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td class="label">Languages:</td>
|
||||||
|
<td>Fluent English · German B1 TELC (3 yrs Berlin + 3 yrs Basel) · EU citizen, immediately available</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<h3>Formal Education</h3>
|
||||||
|
<ul>
|
||||||
|
<li><em><strong>Postgraduate in Data Science for Finance</strong></em> – 2021<br>
|
||||||
|
<span class="edu-school">NOVA IMS Information Management School, Lisbon</span></li>
|
||||||
|
<li><em><strong>Master in Information Systems</strong></em> – 2010–2012<br>
|
||||||
|
<span class="edu-school">Research Area: Knowledge Representation & Reasoning, PPGI/UNIRIO</span></li>
|
||||||
|
<li><em><strong>Bachelor in Computer Science</strong></em> – 2004–2009<br>
|
||||||
|
<span class="edu-school">Metodista Bennett, Rio de Janeiro</span></li>
|
||||||
|
<li>Thesis: Agile Systems Development for Web 2.0 with Ruby on Rails</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Relevant Professional Experience</h3>
|
||||||
|
<ul>
|
||||||
|
<li><strong>Swisscom</strong> – <em>2024–2025</em> – <em>Zürich, Switzerland</em>
|
||||||
|
<p class="job-desc"><strong>DevOps Engineer</strong> developing platforms for Telecommunication Operations.</p></li>
|
||||||
|
<li><strong>EDGE Empower®</strong> – <em>2024–2025</em> – <em>Baar, Switzerland</em>
|
||||||
|
<p class="job-desc"><strong>Senior Technical Lead</strong> managing projects and external UX & Dev Teams for a SaaS Company.</p></li>
|
||||||
|
<li><strong>ExtraPolo — Independent Consulting</strong> – <em>2010–2022</em> – <em>Rio de Janeiro · Berlin · Athens · Lisbon</em>
|
||||||
|
<p class="job-desc">For more than 10 years, worked as an independent Software Developer and IT Consultant, developing dozens of Projects for public and private contractors in Brazil, Germany, Greece and Switzerland.</p></li>
|
||||||
|
<li><strong>Moedax Digital Services</strong> – <em>2018–2021</em> – <em>Lisbon and Rio de Janeiro</em>
|
||||||
|
<p class="job-desc"><strong>Founder & CTO</strong> – connected Brazilian CBDC with KYC processes and automation</p></li>
|
||||||
|
<li><strong>GFOSS.eu / Code + Create</strong> – <em>2017–2018</em> – <em>Athens, Greece</em>
|
||||||
|
<p class="job-desc"><strong>Web Programming Teacher</strong> – taught web programming to refugee and local youth</p></li>
|
||||||
|
<li><strong>Tactical Tech Collective</strong> – <em>2014–2016</em> – <em>Berlin, Germany</em>
|
||||||
|
<p class="job-desc"><strong>Full-Stack Web Architect</strong> on an NGO under the Exposing the Invisible Team.</p></li>
|
||||||
|
<li><strong>Trommsdorf + Drüner</strong> – <em>2013–2014</em> – <em>Berlin, Germany</em>
|
||||||
|
<p class="job-desc"><strong>Full-stack Engineer</strong> – Innovation Team developing Business Intelligence dashboards.</p></li>
|
||||||
|
<li><strong>Cortex Intelligence</strong> – <em>2007–2008</em> – <em>Rio de Janeiro, Brazil</em>
|
||||||
|
<p class="job-desc"><strong>Developer</strong> in the Competitive Intelligence and Data Mining Team.</p></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Certifications</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Swiss Federal Act on Data Protection (nFADP)</li>
|
||||||
|
<li>Gen AI Foundational Models — NLP & LLMs</li>
|
||||||
|
<li>AI Agents using RAG and LangChain</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Relevant Tech Skills</h3>
|
||||||
|
<ul>
|
||||||
|
<li>System Analysis & Modeling with UML</li>
|
||||||
|
<li>Quick Proof-of-Concepts development, deploy and management.</li>
|
||||||
|
<li>Large Language Models, Gen AI, LangChain integration and Processes Automation</li>
|
||||||
|
<li>MVC System Architecture, Design Patterns & Object-Oriented Programming</li>
|
||||||
|
<li>Data Engineering, Data Science, Relational Databases & SQL</li>
|
||||||
|
<li>Experience with Blockchain, Smart Contracts and P2P systems</li>
|
||||||
|
<li>Distributing and Scaling Processes with Message Queues</li>
|
||||||
|
<li>Developing Web Crawlers & Bots for Data Mining & ETL</li>
|
||||||
|
<li>Linux Systems, VPS, DevOps, SSH & Deploy with Continuous Integration processes</li>
|
||||||
|
<li>Projects mostly developed in Python, Ruby on Rails, Django, Java</li>
|
||||||
|
<li>Full Stack Developer & Front-end Web Design with HTML, CSS and JavaScript frameworks</li>
|
||||||
|
<li>CI/CD, Docker, Kubernetes and GitHub workflows</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>Natural Languages</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Native Brazilian Portuguese</li>
|
||||||
|
<li>Advanced Spoken Spanish</li>
|
||||||
|
<li>A2 level Greek – <em>3 years in Athens</em></li>
|
||||||
|
<li>B1 level German / TELC proof – <em>3 years in Berlin</em> and 3 in Switzerland</li>
|
||||||
|
<li>Fluent English – <em>13 years in between international teams</em></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<div class="footer">
|
||||||
|
References available upon request · CV updated May 2026
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="right-col">
|
||||||
|
<!-- Photo placeholder - remove if not needed -->
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,7 +0,0 @@
|
|||||||
The homework only you can do — before Tuesday
|
|
||||||
|
|
||||||
1. A real "said no on security grounds" story, or accept you don't have one and say so
|
|
||||||
2. What you actually did about salary-data access control at EDGE Empower
|
|
||||||
3. The real Swisscom CVE dashboard details — source, audience, what it changed
|
|
||||||
4. Your genuine "why security, why now" — the one answer that can't be scaffolded
|
|
||||||
5. One hour on CIS Controls / ISO 27001 / NIST CSF
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
Dear Adobe Hiring Team,
|
|
||||||
|
|
||||||
I am excited to apply for the Senior Software Engineer position (R170402) with the Brand Visibility team here in Basel. Building the systems that determine how enterprise brands appear in ChatGPT, Gemini, and the next generation of AI agents sits exactly at the intersection of my +20y background in full-stack software engineering and my recent work on AI-native platforms, LLM integrations, and web-scale content analysis.
|
|
||||||
|
|
||||||
A representative example is my independent project, Rodado, the biggest Brazilian data platform maintaining and exposing ~730 Brazilian public datasets for analytics and AI. It manages approximately 1TB of Parquet data on S3-compatible storage, integrates DuckDB for analytics, provides REST APIs and semantic search, and includes an LLM-powered natural-language-to-SQL interface exposed through MCP tooling — making the entire platform directly consumable by AI agents. Building it required scalable ETL pipelines, robust metadata management, secure APIs, query optimization, and designing for exactly the kind of AI-driven discovery that brand visibility in AI experiences demands.
|
|
||||||
|
|
||||||
I work AI-natively day to day: AI coding agents such as Claude Code are a core part of my development workflow, and I have built agentic systems end-to-end, including an autonomous framework that closes the loop between knowledge, hypothesis, experiment, and analysis. On the visibility side, my HelvetiScan project scanned and mapped 2.5M+ Swiss .ch domains — HTTP, DNS, TLS, WHOIS, and content — with sector classification and scoring, which is web presence analysis at national scale and the same class of problem as reasoning about brand visibility data across SEO/GEO platforms.
|
|
||||||
|
|
||||||
Throughout my career, I have designed and delivered production systems using Python, TypeScript, Ruby, SQL/NoSQL databases, REST APIs, cloud infrastructure, CI/CD, and modern software engineering practices. At Swisscom, I helped modernize mission-critical internal platforms and CI/CD pipelines supporting high-availability telecommunications infrastructure. Previously, at EDGE Empower, I led a multidisciplinary engineering team, redesigned a Python monolith into a parallelized TypeScript architecture that reduced processing time by 98%, and shortened CI/CD pipelines from 14 minutes to 4 minutes — automated quality gates that scale without relying on individual discipline.
|
|
||||||
|
|
||||||
I enjoy operating in ambiguity: as an independent consultant I drove 40+ projects from unclear briefs to shipped products, and I like sharing what I learn through mentoring, documentation, and teaching. I hold a Bachelor's degree in Computer Science, a Master's degree in Information Systems focused on knowledge representation and reasoning — a foundation that maps naturally onto how LLMs represent and retrieve knowledge about brands — and additional postgraduate studies in Data Science.
|
|
||||||
|
|
||||||
I am based in Basel, immediately available, hold a Swiss B permit and a Portuguese passport.
|
|
||||||
|
|
||||||
Thank you for your consideration.
|
|
||||||
|
|
||||||
Kind regards,
|
|
||||||
Rafael Polo
|
|
||||||
14-July-2026
|
|
||||||
extrapolo.com / linkedin.com/in/rafaelpolo / github.com/rafapolo
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
Dear Roche hiring team,
|
|
||||||
|
|
||||||
I am applying for the Principal Software/Data Engineer position in Basel because the role fits the work I do best: designing secure, scalable production systems that connect data, software architecture, AI-enabled workflows, and product delivery. I am based in Basel, hold EU citizenship, do not require a work permit, and bring more than 20 years of software engineering experience across Switzerland, Germany, Greece, Brazil, and Portugal.
|
|
||||||
|
|
||||||
My background combines platform engineering, data pipelines, front-end interfaces, back-end APIs, CI/CD, and production operations. Most of my systems have used PostgreSQL or compatible relational database patterns, and I am comfortable designing schemas, query paths, APIs, and operational safeguards around live data. I have built React/TypeScript interfaces, Python/Ruby/TypeScript back ends, Docker-based deployments, AWS services, Kubernetes environments, and CI/CD workflows.
|
|
||||||
|
|
||||||
A strong example is my independent project rodado/baseldosdados: a production data platform around one of the largest Brazilian public-data mirrors exposed through MCP-style tooling. It covers hundreds of public datasets, approximately 675 GB of Parquet+zstd data, DuckDB, S3-compatible object storage, semantic table search, an LLM natural-language-to-SQL workflow, a programmatic SQL API, and read-only access controls. The system handles domains such as health, education, elections, companies, public contracts, employment, and demographic indicators. Building it required partition-aware query design, join-key modelling, result validation, credentials isolation, logging, reproducible schema metadata, and careful handling of personal identifiers such as CPF/CNPJ.
|
|
||||||
|
|
||||||
This is the same engineering pattern I would bring to Roche: robust software architecture for data- and ML-driven products, reliable APIs and pipelines, usable interfaces for complex outputs, and disciplined production practices. I understand the difference between a promising prototype and a system that teams can trust, operate, monitor, and extend. I also enjoy the product side of that work: balancing technical trade-offs with user impact, business value, maintainability, and delivery speed.
|
|
||||||
|
|
||||||
At Swisscom, I worked on modernization of mission-critical internal platforms and CI/CD pipelines for high-availability telecom infrastructure. At EDGE Empower, I led a small engineering and UX team, built a PayTool that reduced processing time by 98%, and shortened a CI/CD pipeline from 14 minutes to 4 minutes. Across consulting work, fintech/KYC systems, civic data platforms, and investigative data tools, I have collaborated with UX designers, product managers, researchers, journalists, and technical teams to translate ambiguous needs into working software.
|
|
||||||
|
|
||||||
I also match the academic and communication requirements: I hold a Bachelor in Computer Science, a Master in Information Systems focused on knowledge representation and reasoning, and a postgraduate degree in Data Science for Finance. I am used to explaining complex systems clearly, mentoring others, documenting reusable patterns, and working across cultures in English, Portuguese, Spanish, and German B1.
|
|
||||||
|
|
||||||
While I have not worked directly inside clinical development, I have worked in regulated and sensitive-data contexts including Swiss data protection, fintech/KYC, telecom infrastructure, and public-sector data. I understand the importance of auditability, reproducibility, access control, privacy, and conservative engineering when software supports important decisions. I would bring that mindset to Roche's Product Development Data Sciences environment and learn the clinical and GxP-specific context with discipline.
|
|
||||||
|
|
||||||
What attracts me most is the Innovation Accelerator's position between strategy, experimentation, and production. I enjoy exploring emerging technologies, validating them through real use cases, and making the engineering decisions that allow pilots and MVPs to become secure, maintainable products.
|
|
||||||
|
|
||||||
Sincerely,
|
|
||||||
|
|
||||||
Rafael Polo
|
|
||||||
+7
-99
@@ -1,108 +1,16 @@
|
|||||||
# CV & application materials — to update
|
# CV & application materials — to update
|
||||||
|
|
||||||
Audit date: 2026-07-27. Scope: `linkme/cv/`, `linkme/motivation*.md`, `rafapolo/` portfolio + `rafapolo/job/`.
|
Audit date: 2026-07-27. Priority 1–3 executed 2026-09-09 (see commit / session notes).
|
||||||
|
Scope: `linkme/cv/`, `linkme/motivation*.md`, `rafapolo/` portfolio + `rafapolo/job/`.
|
||||||
|
|
||||||
## Why
|
## Channel shift (behavioural, not a file — still open, Rafael's to do)
|
||||||
|
|
||||||
~270 applications over 18 months (≈15/month, mostly LinkedIn Easy Apply) with no offers.
|
|
||||||
Volume was never the problem. Three causes found:
|
|
||||||
|
|
||||||
1. **The CV omits the entire target stack.** Keyword audit of `Rafael_Polo_CV_EN_2026.pdf`:
|
|
||||||
|
|
||||||
| Keyword | Count |
|
|
||||||
|---|---|
|
|
||||||
| TypeScript | 0 |
|
|
||||||
| React | 0 |
|
|
||||||
| Rails | 0 |
|
|
||||||
| PostgreSQL | 0 |
|
|
||||||
| LLM / RAG / LangChain | 0 |
|
|
||||||
| Rodado | 0 |
|
|
||||||
| Staff / Principal | 0 |
|
|
||||||
| `98%` (best metric) | 0 |
|
|
||||||
|
|
||||||
Skills line says "Javascript Frameworks" instead of `React` / `TypeScript` — no ATS or
|
|
||||||
recruiter searches that string. Space is spent on `Slack`, `UX`, `UML`, `MVC`.
|
|
||||||
|
|
||||||
2. **The CV pitches a security-ops job.** Profile paragraph leads with *"operating production
|
|
||||||
infrastructure … security patching, vulnerability remediation, and system hardening under
|
|
||||||
strict SLAs"* — likely written for `job/applications/helvetia/` (Cyber Hire). Every
|
|
||||||
Staff/Principal software, AI and platform application since has carried that framing.
|
|
||||||
Tell: the HCLTech *Application Support Engineer* posting is a good match for this CV.
|
|
||||||
|
|
||||||
3. **Two different CVs are in circulation, with conflicting employment dates.**
|
|
||||||
|
|
||||||
| Source | Swisscom start | Date |
|
|
||||||
|---|---|---|
|
|
||||||
| `rafapolo/rafael-polo-cv.pdf` (served at extrapolo.com) | 02/2024 | May 13 |
|
|
||||||
| `rafapolo/job/cv/Rafael_Polo_CV_EN_2026.pdf` (what gets sent) | 03/2024 | Jul 24 |
|
|
||||||
| `linkme/cv/polo.md` | 2024, no month | — |
|
|
||||||
|
|
||||||
Secondary: LinkedIn Easy Apply is the lowest-conversion channel for Staff/Principal roles
|
|
||||||
(300–1000 applicants/posting; recruiters review the first ~20–30). Swiss senior roles fill
|
|
||||||
via company portals, recruiters and referrals.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## Priority 1 — the CV
|
|
||||||
|
|
||||||
- [ ] **new** `rafapolo/job/cv/cv-source.md` — single canonical source; both PDF and HTML
|
|
||||||
generated from it. No source of truth today, which is how three versions drifted.
|
|
||||||
- [ ] `rafapolo/job/cv/Rafael_Polo_CV_EN_2026.pdf` — rebuild:
|
|
||||||
- [ ] New profile line: platform / data / AI engineering. Drop the security-ops framing.
|
|
||||||
- [ ] Skills as literal searchable strings:
|
|
||||||
`Python · TypeScript · React · Node.js · Ruby on Rails · PostgreSQL · Docker ·
|
|
||||||
Kubernetes · AWS · Terraform · CI/CD · LLM · RAG · LangChain`
|
|
||||||
- [ ] Remove `Slack`, `UX`, `Modeling with UML`, `MVC system architecture`,
|
|
||||||
`Javascript Frameworks`
|
|
||||||
- [ ] Restore metrics: 98% processing reduction, CI/CD 14 → 4 min
|
|
||||||
- [ ] Add **Rodado** (~730 datasets, 1TB Parquet, DuckDB, NL-to-SQL over MCP) — currently
|
|
||||||
absent. Keep HelvetiScan (already appears 3×).
|
|
||||||
- [ ] `Swiss B-Visa` → `Swiss B permit` (correct term: *Aufenthaltsbewilligung B*)
|
|
||||||
- [ ] Compress ExtraPolo `01/2008–01/2023` — a 15-yr freelance block overlapping two
|
|
||||||
employed roles reads as unverifiable to Swiss HR. One line: "Independent consulting
|
|
||||||
(40+ projects)".
|
|
||||||
- [ ] Keep single-column layout so ATS text extraction stays clean (verify with
|
|
||||||
`pdftotext file.pdf -` — name and contact block currently land mid-document).
|
|
||||||
- [ ] `rafapolo/rafael-polo-cv.pdf` — replace with a copy of the rebuilt PDF. Currently a
|
|
||||||
stale May 13 file with a different Swisscom start date.
|
|
||||||
- [ ] `rafapolo/curriculum.html` — same profile/skills/keyword fixes so the web CV matches
|
|
||||||
the PDF. Header/`<title>` should carry positioning, not just "CV".
|
|
||||||
|
|
||||||
## Priority 2 — dedupe
|
|
||||||
|
|
||||||
- [ ] `linkme/cv/polo.md`
|
|
||||||
- [ ] `:13` — `"no work permit required"` is wrong (CH is not in the EU) →
|
|
||||||
`Swiss B permit · Portuguese (EU) citizen`
|
|
||||||
- [ ] `:118` — drop `Java` (own scraper filters Java roles via `JAVA_TITLE_RE`)
|
|
||||||
- [ ] Add Rodado / HelvetiScan and the metrics; sync dates with canonical CV.
|
|
||||||
This file drives job ranking per `CLAUDE.md`, so it must match reality.
|
|
||||||
- [ ] `linkme/cv/` — archive to `cv/old/` or delete: `polo-cv.html`,
|
|
||||||
`polo-cv-accurate.html`, `polo-new-cv.{html,odt,pdf}`,
|
|
||||||
`rafael-polo-cv-2026-senior.{odt,pdf}`, `rafael-polo-cv.pdf`
|
|
||||||
(a file named `-accurate` implies the others aren't)
|
|
||||||
- [ ] `rafapolo/job/cv/` — 14 files; keep the canonical pair, move the rest into the
|
|
||||||
existing `old/`
|
|
||||||
|
|
||||||
## Priority 3 — letters & tracking
|
|
||||||
|
|
||||||
- [ ] `linkme/motivation1.md` (Roche) — delete `:15`, the *"While I have not worked directly
|
|
||||||
inside clinical development…"* paragraph. Never volunteer a disqualification.
|
|
||||||
Trim ~800 → ~250 words.
|
|
||||||
- [ ] `linkme/motivation-adobe.md` — strongest of the two; trim to ~250 words. Permit line
|
|
||||||
at `:13` is already correct — use as the template for all others.
|
|
||||||
- [ ] **new** `linkme/results/applications.csv` —
|
|
||||||
`date,company,role,channel,url,stage,outcome`.
|
|
||||||
No record exists of what happened to any of the ~270 applications, so there is no way
|
|
||||||
to tell whether the failure is at screening, phone screen, or onsite.
|
|
||||||
|
|
||||||
## Not changing
|
|
||||||
|
|
||||||
Scraper is fine — `fetch.ts`, filter pipeline, `index.ts` all working. No changes needed.
|
|
||||||
|
|
||||||
## Channel shift (behavioural, not a file)
|
|
||||||
|
|
||||||
- [ ] Invert the mix: ~70% company career portals + recruiter/referral, ~30% Easy Apply.
|
- [ ] Invert the mix: ~70% company career portals + recruiter/referral, ~30% Easy Apply.
|
||||||
- [ ] Apply direct (not via LinkedIn) for the live Basel/Zürich targets: Adobe, Roche,
|
- [ ] Apply direct (not via LinkedIn) for the live Basel/Zürich targets: Adobe, Roche,
|
||||||
Exeon, Crypto Finance, Swiss Post Cybersecurity.
|
Exeon, Crypto Finance, Swiss Post Cybersecurity.
|
||||||
- [ ] Reconsider German-first corporates (Coop, Valora, Helvetia) while at B1 — screening
|
- [ ] Reconsider German-first corporates (Coop, Valora, Helvetia) while at B1 — screening
|
||||||
failure precedes any engineering assessment.
|
failure precedes any engineering assessment.
|
||||||
|
|
||||||
|
## Not changing
|
||||||
|
|
||||||
|
Scraper is fine — `fetch.ts`, filter pipeline, `index.ts` all working. No changes needed.
|
||||||
|
|||||||
Reference in New Issue
Block a user