25/priv/static/cv/anders-englof-ytterstrom.html
2024-10-27 23:06:03 +01:00

1 line
No EOL
16 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<html lang=en><head><meta charset=UTF-8><title>cv | Anders Englöf Ytterström</title><meta name=viewport content="width=device-width"><meta property=og:title content=""><meta property=og:description content=CV><meta property=og:image content=fixme.jpg><link rel=stylesheet href=./cv.css></head><body><main class=resume><div class=name><header><hgroup><h1>Anders Englöf Ytterström</h1><div role=doc-subtitle></div></hgroup></header><footer class=vcard><address>Balladvägen 3, 784 43 Borlänge, Sweden</address><dl class=contact><dt>Phone:</dt><dd><a href=tel:+46702169645>+46 70 216 96 45</a></dd><dt>Email:</dt><dd><a href=mailto:yttan@fastmail.se>yttan@fastmail.se</a></dd><dt>Github:</dt><dd><a href=https://github.com/madr rel=external title=Github>madr</a></dd><dt>Website:</dt><dd><a href=https://madr.se rel=external title=Website>madr.se</a></dd></dl></footer></div><section class=about><div><p><strong>Anders Englöf Ytterström</strong>, Web Developer with 16 years of passion. I strive to constantly come up with new ways of improving both products and processes for all participants in projects I am part of.</p><p>I prefer my coffee black, just like my metal, and preferably drip brewed by hand.</p><p>I also aim to be a <a href=https://www.linkedin.com/pulse/20140816105034-167544180-you-don-t-want-a-rock-star>roadie, not a rockstar</a>, as well as defending <a href=https://mcfunley.com/choose-boring-technology>boring tech</a>.</p></div><span><a href=./cv-anders-englof-ytterstrom.pdf>Download as PDF</a></span></section><section class=skills><h2>Skills</h2><dl class=skillset><dt>Programming languages</dt><dd>HTML, CSS (Sass), Python, JavaScript (TypeScript), Elixir, Rust, PHP</dd><dt>Development process</dt><dd>CI/CD, Automated testing, Mentoring, Mob programming, Pair programming</dd><dt>Web Backend Frameworks</dt><dd>Django, Flask, Phoenix (LiveView), Express, Remix, Next.js</dd><dt>Web Frontend</dt><dd>React, Redux, Vue, Svelte, Lit, OOCSS, BEM, Living styleguides</dd><dt>Data visualization</dt><dd>Vega, Altair, Vega-Lite, Advanced SVG</dd><dt>Build systems</dt><dd>Webpack, Parcel, esbuild</dd><dt>Content management</dt><dd>Wordpress, Joomla, Directus</dd><dt>Web Backend testing</dt><dd>pytest, Jest, Selenium, Playwright, Puppeteer, WebDriverIO, Web Test Runner</dd><dt>Web Frontend testing</dt><dd>Lighthouse, Axe, WebAIM, VoiceOver, Voice Assistant, NVDA, Cypress</dd><dt>Deployment</dt><dd>AWS, Docker (Podman), Kubernetes, Ansible, Terraform, Azure DevOps, Render</dd><dt>Services &amp; Infrastructure</dt><dd>Nameko, RabbitMQ, Celery, Kibana, Prometheus</dd><dt>Databases</dt><dd>MySQL, Postgres, Elasticsearch (Opensearch), GraphQL, Influx, Timescale</dd><dt>Version control</dt><dd>Git, Subversion</dd><dt>Operating systems</dt><dd>Mac OS, RHEL, Debian, Ubuntu server, Arch linux, Windows</dd><dt>Other skills</dt><dd>Inclusive communication, Accessibility compliance, Technical writing</dd><dt>Languages</dt><dd>Swedish (native), English (fluent)</dd></dl></section><section class=work><h2>Experience</h2><div class=timeline><article class=event><h3 class=event__title>PlaymakerAI, Data analytics SaaS</h3><div class="event__location event__aside">Remote position</div><div class=event__position>Full Stack Engineer</div><div class="event__date event__aside">Nov 2023now</div><div class=event__content><ul><li>Part of a team consisting of Data scientists and Machine learning experts.</li><li>DevOps, Backend programming, Frontend engineering.</li><li>Python, NumPy, Pandas, Scikit-learn, React, MaterialUI</li></ul></div></article><article class=event><h3 class=event__title>Stratsys, Process management platform (SaaS)</h3><div class="event__location event__aside">Remote position</div><div class=event__position>Senior Frontend Architect</div><div class="event__date event__aside">Mar 2022Oct 2023</div><div class=event__content><ul><li>Part of a team consisting of Frontend architects and UX designers.</li><li>Responsible for the design system, frontend DX and Microfrontend toolchain and architecture.</li><li>Writing Web components with full ARIA compability, according to the spec.</li><li>QA and manual testing with screen readers (NVDA, VoiceOver).</li></ul></div></article><article class=event><h3 class=event__title>Iteam, Technical Innovation agency</h3><div class="event__location event__aside">Remote position</div><div class=event__position>Full Stack Developer</div><div class="event__date event__aside">Sep 2021Mar 2022</div><div class=event__content><ul><li>All source code are released by a FOSS license.</li><li>Backend programming in Node.js, TypeScript, Express and Next.js.</li><li>Frontend development in React, Jotai, Formik, Styleguidist and Figma.</li><li>Code labs and skill sharing.</li></ul></div></article><article class=event><h3 class=event__title>Kundo, Customer service company (SaaS)</h3><div class="event__location event__aside">Stockholm, Sweden</div><div class=event__position>Full Stack Developer</div><div class="event__date event__aside">Mar 2017Sep 2021</div><div class=event__content><ul><li>T-shaped frontend developer focusing on WCAG 2.0 AA, design and mentoring.</li><li>Roles besides development: Team Lead, Tech Lead and Security administrator (briefly).</li><li>Backend programming in Django and Phoenix, with RabbitMQ as broker/RPC and Celery as job queue.</li></ul></div></article><article class=event><h3 class=event__title>Adeprimo, Digital Fullservice agency</h3><div class="event__location event__aside">Östersund, Sweden</div><div class=event__position>Systems developer</div><div class="event__date event__aside">Oct 2007Feb 2017</div><div class=event__content><ul><li>T-shaped Systems developer focusing on frontend and backend web development. Fields: Media, Destination, Tourism.</li><li>High demand on customer experience and context switching.</li><li>Distributed, remote-first teams with members located in Vaasa (Finland), Örebro (Sweden) and Östersund (Sweden).</li><li>Consulting for startups based in Östersund and Åre, Sweden.</li><li>Polopoly, Python, PHP, Sass, jQuery, Wordpress, SilverStripe, .NET.</li></ul></div></article><article class=event><h3 class=event__title>Pierce, Ecommerce (Motocross, MC and Snowmobile accessories)</h3><div class="event__location event__aside">Åre, Sweden</div><div class=event__position>Web developer</div><div class="event__date event__aside">MarJul 2015</div><div class=event__content><ul><li>Development and maintainence for 24mx.se, XLMoto.se och sledstore.se.</li><li>.NET, C#, Azure.</li></ul></div></article><article class=event><h3 class=event__title>Västsvensk tidningsdistribution (VTD), Distribution</h3><div class="event__location event__aside">Alingsås, Sweden</div><div class=event__position>Newspaper carrier</div><div class="event__date event__aside">JulAug 2007</div><div class=event__content><ul><li>Temporary summer position. Delivering Göteborgs-Posten to 300 households by foot. It rained every night.</li></ul></div></article><article class=event><h3 class=event__title>Moment Marketing, Startup</h3><div class="event__location event__aside">Stockholm, Sweden</div><div class=event__position>Web designer</div><div class="event__date event__aside">Sep 2006Apr 2007</div><div class=event__content><ul><li>Frontend development assistance. Employment by the hour.</li></ul></div></article></div></section><section class=education><h2>Education</h2><div class=timeline><article class=event><h3 class=event__title>Media and Communication Science, Mid Sweden University</h3><div class="event__location event__aside">Sundsvall, Sweden</div><div class=event__position>Degree of Bachelor of Arts (incomplete)</div><div class="event__date event__aside">20042007</div><div class=event__content>Web design, Computer science, Computer engineering, Programming (Java, C)</div></article><article class=event><h3 class=event__title>Staffanskolan secondary school</h3><div class="event__location event__aside">Söderhamn, Sweden</div><div class=event__position>Student degree</div><div class="event__date event__aside">20012004</div><div class=event__content>Media programme, vocational, media production, graphical communication</div></article></div></section><section class=projects><h2>Projects</h2><div class=timeline><article class=event><h3 class=event__title>OneUX Component library</h3><i></i><div class=event__position>Senior Frontend Architect, Stratsys</div><div class=event__aside>2022-2023</div><div class=event__content><ul><li>Implement a reusable set of components as Web components (Custom element with Shadow DOM).</li><li>Data-driven state over DOM State.</li><li>Deployed by the MicroFrontend concept and practices.</li><li>Fully accessible, with keyboard navigation and mouse gestures, according to the ARIA Authoring Practices guide.</li><li>E2E/Integration tests in a set of real, headless browsers.</li><li>Packaged as part of a NPM package and a Design system for internal frontend developers.</li><li>Atomic Design, Microfrontends, Storybook, Custom Elements, Design Systems, Style Guides, Web Components, Lit, Vue.js, ARIA Authoring Practices guides (APG).</li></ul></div></article><article class=event><h3 class=event__title>SEO-friendly embed of knowledgebase</h3><i></i><div class=event__position>Full Stack Developer, Kundo</div><div class=event__aside>Mar 2020Mar 2021</div><div class=event__content><ul><li>Embedded a knowledgebase on any site using a simple embed snippet, whereas the knowledgebase is embedded using fetch().</li><li>Navigation between guides and text search included, all crawlable by googlebot.</li><li>SPA-compliance.</li><li>TypeScript, Jest, Google Search Console.</li></ul></div></article><article class=event><h3 class=event__title>Accessibility Statement</h3><i></i><div class=event__position>Full Stack Developer, Kundo</div><div class=event__aside>SepDec 2019</div><div class=event__content><ul><li>Compliance of the EU Directive on the Accessibility of Public Sector Websites.</li><li>Axe, W3C validators, Lighthouse, manual accessibility testing.</li></ul></div></article><article class=event><h3 class=event__title>Kubernetes migration</h3><i></i><div class=event__position>Full Stack Developer, Kundo</div><div class=event__aside>Jan 2019Dec 2020</div><div class=event__content><ul><li>Migrating an AWS production environment (several service-modules in different programming languages, message queues and micro services) to Kubernetes, along with all in-house DevOps tooling.</li><li>Goals: keep one command deploys to production, keep Kibana logging, supervision of all services.</li><li>Terraform, Ansible, Docker, Helm, Prometheus, Kubectl, Minikube.</li></ul></div></article><article class=event><h3 class=event__title>Facebook Opengraph client</h3><i></i><div class=event__position>Full Stack Developer, Kundo</div><div class=event__aside>Sep 2017Mar 2019</div><div class=event__content><ul><li>Integrating customer support questions posted on Facebook Pages and Messenger into the Dashboard.</li><li>Needed to be done asyncronously to not tamper with API credibility.</li><li>Python, Django, MyPy, Protobuf, RabbitMQ, Phoenix Presence+Channels, React + Redux</li></ul></div></article><article class=event><h3 class=event__title>Security &amp; GDPR accountable</h3><i></i><div class=event__position>Full Stack Developer, Kundo</div><div class=event__aside>Sep 2017Feb 2019</div><div class=event__content><ul><li>Accountable for several projects to fulfil the GDPR directive up to May 25th, 2018 and onwards.</li><li>Accountable for security processes and planning for the technical platform.</li></ul></div></article><article class=event><h3 class=event__title>Engcon pricelist</h3><i></i><div class=event__position>Interface Developer, Consultant</div><div class=event__aside>Nov 2016Feb 2017</div><div class=event__content><ul><li>Prototyp-driven development of a digital version of a printed pricelist, focusing on effiency and MVP.</li><li>Vue, Django, Twitter Bootstrap</li></ul></div></article><article class=event><h3 class=event__title>Wide Ideas</h3><i></i><div class=event__position>Full stack Developer, Consultant</div><div class=event__aside>Aug 2011Feb 2017</div><div class=event__content><ul><li>Development of an idea management platform.</li><li>Handled DevOps, automation of workflows, development of web interface, and backend programming.</li><li>PHP, Pligg, Python, Flask, MongoDB, Elastic Search</li></ul></div></article><article class=event><h3 class=event__title>Östersundstidningar redesign</h3><i></i><div class=event__position>Interface Developer</div><div class=event__aside>MarMay 2011</div><div class=event__content><ul><li>Complete redesign of 3 sites with the same locked (and oldfashioned) HTML.</li><li>An Object-oriented CSS architecture (OOCSS) was used to create a design system and KSS-powered styleguide utilizing Sass mixins.</li></ul></div></article><article class=event><h3 class=event__title>Mktwebb</h3><i></i><div class=event__position>Interface Developer</div><div class=event__aside>Oct 2007Aug 2009</div><div class=event__content><ul><li>Shared technical solution for a publication platform for 40 newspapers across Sweden, with Polopoly as CMS.</li><li>Technological ownership and mentoring others to write JavaScript.</li><li>All HTML and CSS written in collaboration with backend programmers, UX researchers and designers.</li></ul></div></article></div></section><section class=courses><h2 class=h-aside>Courses, Conferences & Certifications</h2><ul><li>ElixirConf EU, Warshawa (2020, postponed due to the Coronavirus pandemic)</li><li>Att leda utan att vara chef, Företagsakademin (2019)</li><li>Modern React with Redux, Udemy (2017)</li><li>Ethical Programming from Scratch, Udemy (2018)</li><li>Android Developer Nanodegree, Udacity (2017)</li><li>PyConf, Stockholm (2017)</li><li>Nordic.JS, Stockholm (2014)</li><li>TiConf, Amsterdam (2014)</li><li>FFConf, Brighton (2012)</li><li>DevSum, Stockholm (2012)</li><li>Certificed Scrum Master Course, Crisp AB (2010)</li></ul></section><section class=personal><h2 class=h-aside>Personal Projects</h2><div class=timeline><article class="event event--aside"><h3 class=event__title>Advent of code</h3><i></i><div class=event__content><p>Every December since 2016, I challenge myself (and sometimes other collegues) to solve AOC puzzles in a programming language of my choice.</p></div></article><article class="event event--aside"><h3 class=event__title>Tajm.me</h3><i></i><div class=event__content><p>As a consultant, time tracking is a crucial part of every day work, and using bad time tracking software sucks. For 5 years, I scratched my own itch. Django, DRF and Web standards at its core. Several experimental client side solutions built with D3, React, Vue, Android, iOS and GTK+. (Archived, 20122017)</p></div></article><article class="event event--aside"><h3 class=event__title>Baslyft, bärs &amp; burgare</h3><i></i><div class=event__content><p>My first Progressive Web App, with support to work fully offline once installed on a device. It&#x27;s a simple app for logging reps, sets and PB&#x27;s in the gym, with some nice tools built-in: 1RM calculator and KG-LBS converter. Touch-oriented design patterns, React, Redux, localStorage, ServiceWorker and other nifty Web API:s. (On hold, Sep 2019)</p></div></article><article class="event event--aside"><h3 class=event__title>Brütal Legend</h3><i></i><div class=event__content><p>A site to track progress of owning vinyl copies os songs licensed in an epic video game. Occasionally used as a real-world example to teach TypeScript, React and Redux concepts to collegues. (On hold)</p></div></article><article class="event event--aside"><h3 class=event__title>Utsökt</h3><i></i><div class=event__content><p>A simple bookmarking and read list service, with integration to RSS feeds, Pocket and Slack. Inspired by the old, more minimal version of Instapaper. Elixir, Phoenix LiveViews. (In progress)</p></div></article><article class="event event--aside"><h3 class=event__title>Smed</h3><i></i><div class=event__content><p>A pluggable static site generator, inspired by Metalsmith. The goal is to replace my own sites in Metalsmith, and to learn Rust. (In progress)</p></div></article></div></section></main></body></html>