all repos — website @ 7c4e8e7c6427c1cfbe3cf9e0f251c663a22cd5ae

My website

cv: re-work and add personal/community projects

Alan Pearce
commit

7c4e8e7c6427c1cfbe3cf9e0f251c663a22cd5ae

parent

3bcf90a5c614fca323ee4fa47cec5fe7c9c1ac23

1 file changed, 191 insertions(+), 144 deletions(-)

changed files
M cv.htmlcv.html
@@ -5,7 +5,6 @@ <title>Alan Pearce's Curriculum Vitae</title>
<style> body { font-family: Verdana, sans-serif; - font-size: small; margin: auto; padding: 1em; max-width: 50rem;
@@ -14,7 +13,6 @@ background-color: #fff;
word-wrap: break-word; overflow-wrap: break-word; line-height: 1.5; - color: #444; height: 210mm; width: 297mm; }
@@ -38,11 +36,8 @@
a { color: #3273dc; } - - .title { - color: #222; - text-decoration: none; - border: 0; + p { + margin: 0; } time {
@@ -55,7 +50,9 @@ }
.tags { padding: unset; - font-size: smaller; + font-size: small; + margin-bottom: 1ex; + color: #222; } .tags > li {
@@ -64,18 +61,15 @@ display: inline-block;
padding-right: 1ex; } - textarea { - width: 100%; - font-size: 1rem; - } - - input { - font-size: 1rem; - } - main, article { line-height: 1.6; + } + + hgroup { + display: flex; + justify-content: space-between; + align-items: baseline; } blockquote {
@@ -90,19 +84,27 @@ padding: 25px;
text-align: center; } - main { - column-count: 2; + body > header > ul { + font-size: large; } + main > section { padding-right: 1rem; padding: 1rem 0; border-bottom: 2px solid #999; break-inside: avoid; + &.education { + column-count: 2; + h3 { + column-span: all; + } + } } - section > header { - display: flex; - justify-content: space-between; - align-items: center; + section > h3 { + margin-bottom: 1ex; + } + article { + margin-bottom: 2ex; } .timeperiod { font-style: italic;
@@ -111,15 +113,20 @@ }
ul { padding-left: 0; - margin: unset; + margin: 0; } ul > li { display: inline-block; - font-size: smaller; } - .links > li { - display: block; + ul.links { + margin-top: 1ex; + display: flex; + justify-content: space-between; + align-items: center; + } + header > ul.links { + margin-top: 0.5ex; } @media (prefers-color-scheme: dark) {
@@ -155,125 +162,126 @@ </head>
<body> <header> <h1>Alan Pearce</h1> - <h2>Backend & Infrastructure Developer</h2> - <h3>Berlin, Germany</h3> + <hgroup> + <h2>Backend & Infrastructure Developer</h2> + <p class="location">Berlin, Germany</p> + </hgroup> + <ul class="links"> + <li> + <a href="mailto:alan@alanpearce.eu">alan@alanpearce.eu</a> + </li> + <li><a href="https://alanpearce.eu">alanpearce.eu</a></li> + </ul> </header> - <hr /> <main> <section> - <ul class="links"> - <li> - Email: <a href="mailto:alan@alanpearce.eu">alan@alanpearce.eu</a> - </li> - <li>Website: <a href="https://alanpearce.eu">alanpearce.eu</a></li> - <li> - GitHub: <a href="https://github.com/alanpearce">@alanpearce</a> - </li> - <li> - Personal Projects: - <a href="https://git.alanpearce.eu">git.alanpearce.eu</a> - </li> - </ul> - </section> - <section> - <h4>Summary</h4> + <h3>Summary</h3> <p> I care about keeping code and UIs consistent and simple. I also have a strong drive to learn and really enjoy being able to explore new methodologies and languages. </p> </section> + <section> - <h4>Experience</h4> + <h3>Professional Experience</h3> + <article> + <header> + <hgroup> + <h4>Senior Fullstack Developer at SatoshiPay</h4> + <span class="timeperiod">2017—2023</span> + </hgroup> + <ul class="tags"> + <li>Helm</li> + <li>Kubernetes</li> + <li>GitLab</li> + <li>TypeScript</li> + <li>PostgreSQL</li> + </ul> + </header> + <p> + Principal worker for migration from Docker Cloud to Kubernetes, + alongside work on microservices interfacing with distributed ledger + APIs. Implemented and maintained GitLab CI/CD pipelines including + merge request previews and end-to-end testing. Migrated projects to + product-based monorepos. + </p> + </article> + <article> + <header> + <hgroup> + <h4>Senior Fullstack Developer at SpotCap</h4> + <span class="timeperiod">2015–2017</span> + </hgroup> + <ul class="tags"> + <li>NodeJS</li> + <li>MySQL</li> + <li>Webpack</li> + <li>Sails.js</li> + <li>Mithril.js</li> + </ul> + </header> + <p> + Responsible for banking integration service, implemented parsers and + generators for custom text formats (MT940, MT942) using unit tests to + verify. + <br /> + Worked on backend credit scoring admin panel, began migration from + Sails to SPA using Mithril + </p> + </article> + <article> <header> - <h5>Senior Fullstack Developer at SatoshiPay</h5> - <span class="timeperiod">2017—2023</span> + <hgroup> + <h4>Senior Web Developer at StudentCrowd (Studio-40 spin-off)</h4> + <span class="timeperiod">2014–2015</span> + </hgroup> + <ul class="tags"> + <li>PHP</li> + <li>MySQL</li> + </ul> </header> - <ul> - <li>Helm</li> - <li>Kubernetes</li> - <li>GitLab</li> - <li>TypeScript</li> - <li>PostgreSQL</li> - </ul> - <p> - Principal worker for migration from Docker Cloud to Kubernetes, - alongside work on microservices interfacing with distributed ledger - APIs. Implemented and maintained GitLab CI/CD pipelines including - merge request previews and end-to-end testing. Migrated projects to - product-based monorepos. - </p> - </section> - <section> - <header> - <h5>Senior Fullstack Developer at SpotCap</h5> - <span class="timeperiod">2015–2017</span> - </header> - <ul> - <li>NodeJS</li> - <li>MySQL</li> - <li>Webpack</li> - <li>Sails.js</li> - <li>Mithril.js</li> - </ul> - <p> - Responsible for banking integration service, implemented parsers and - generators for custom text formats (MT940, MT942) using unit tests to - verify. - <br /> - Worked on backend credit scoring admin panel, began migration from - Sails to SPA using Mithril - </p> - </section> - <section> - <header> - <h5>Senior Web Developer at StudentCrowd (Studio-40 spin-off)</h5> - <span class="timeperiod">2014–2015</span> - </header> - <ul> - <li>PHP</li> - <li>MySQL</li> - <li>ElasticSearch</li> - <li>Vagrant</li> - <li>Saltstack</li> - </ul> <p> Optimised database access and ORM usage. Simplified dev environment setup using Vagrant and Salt. Attended ElasticSearch, LogStash & Kibana training. Worked remotely (60% -> 100%) </p> - </section> - <section> + </article> + <article> <header> - <h5>Senior Developer at Studio-40</h5> - <span class="timeperiod">2014</span> + <hgroup> + <h4>Senior Developer at Studio-40</h4> + <span class="timeperiod">2014–2014</span> + </hgroup> + <ul class="tags"> + <li>Symfony</li> + <li>Sylius</li> + <li>PHP</li> + <li>MySQL</li> + <li>Capistrano</li> + </ul> </header> - <ul> - <li>Symfony</li> - <li>Sylius</li> - <li>PHP</li> - <li>MySQL</li> - <li>Capistrano</li> - </ul> <p> Wrote product CSV importer for Sylius with streaming preview diff feature. Fixed issues with integration of payment provider API including false payment failures. Assisted front-end developers with JavaScript. </p> - </section> - <section> + </article> + <article> <header> - <h5>Backend Web Developer at Bulb Studios</h5> - <span class="timeperiod">2013–2014</span> + <hgroup> + <h4>Backend Web Developer at Bulb Studios</h4> + <span class="timeperiod">2013–2014</span> + </hgroup> + <ul class="tags"> + <li>Laravel</li> + <li>ExpressionEngine</li> + <li>Ansible</li> + <li>PHP</li> + <li>Capistrano</li> + </ul> </header> - <ul> - <li>Laravel</li> - <li>ExpressionEngine</li> - <li>Ansible</li> - <li>PHP</li> - <li>Capistrano</li> - </ul> <p> Suggested and implemented switch from Apache to Nginx, enabling a 1000x speedup in page loads. Suggested and implemented use of
@@ -282,43 +290,82 @@ to reduce development environment variance and Capistrano for
deployment. Created time-basic competition entry API designed for 50k RPM. </p> - </section> - <section> + </article> + <article> <header> - <h5>PHP Web Developer at Supplyant</h5> - <span class="timeperiod">2012-2013</span> + <hgroup> + <h4>PHP Web Developer at Supplyant</h4> + <span class="timeperiod">2012-2013</span> + </hgroup> + <ul class="tags"> + <li>PHP</li> + <li>MySQL</li> + <li>Subversion</li> + <li>jQuery</li> + <li>HTML</li> + <li>CSS</li> + </ul> </header> - <ul> - <li>PHP</li> - <li>MySQL</li> - <li>Subversion</li> - <li>jQuery</li> - <li>HTML</li> - <li>CSS</li> - </ul> <p> Maintained e-commerce platform and worked on new product management system. Made Entity-Attribute-Value system usable for other database consumers using an SQL view. Recommended use of Mustache templates, - which the design team loved + which the design team loved. </p> - </section> - <section> + </article> + <article> <header> - <h5>Web Applications Programmer at ASL Holdings</h5> - <span class="timeperiod">2010-2011</span> + <hgroup> + <h4>Web Applications Programmer at ASL Holdings</h4> + <span class="timeperiod">2010-2011</span> + </hgroup> + <ul class="tags"> + <li>PHP</li> + <li>MySQL</li> + </ul> </header> - <ul> - <li>PHP</li> - <li>MySQL</li> - <p>Continued rewrite of SIM management web application</p> - </ul> + <p>Continued rewrite of SIM management web application.</p> + </article> </section> <section> - <h4>Relevant Education</h4> + <h3>Personal and Community Projects</h3> + <article> + <header> + <hgroup> + <h4>Searchix</h4> + <span class="timeperiod">2024–present</span> + </hgroup> + </header> + <p> + Created a search tool in golang for packages and options across the nix/NixOS ecosystem. + </p> + <ul class="links"> + <li><a href="https://searchix.ovh">Deployed instance</a></li> + <li><a href="https://git.alin.ovh/searchix">Source code</a></li> + <li><a href="https://alanpearce.eu/post/searchix/">Announcement post</a></li> + </ul> + </article> + <article> + <header> + <hgroup> + <h4>xHain (website maintainer)</h4> + <span class="timeperiod">2025–present</span> + </hgroup> + </header> + <p> + Took over the maintenance of xHain website. Recommended and guided switch to Caddy for simple language-based redirection. + </p> + <ul class="links"> + <li><a href="https://x-hain.de">Website</a></li> + <li><a href="https://github.com/xHain-hackspace/xhain-website">Source code</a></li> + </ul> + </article> + </section> + <section class="education"> + <h3>Relevant Education</h3> <div> <header> - <h5>CodeSchool</h5> + <h4>CodeSchool</h4> <span class="timeperiod">2014</span> </header> <ul>
@@ -331,7 +378,7 @@ </ul>
</div> <div> <header> - <h5>Computing A Level at Northampton College</h5> + <h4>Computing A Level at Northampton College</h4> <span class="timeperiod">2008-2010</span> </header> </div>