Welcome to odinns.dk v/Odinn Adalsteinsson

Odinn Adalsteinsson

Profile

Strong background as a Senior Backend Developer, specialized in coding modern PHP using the Laravel framework with MySQL databases. Quality-focused, writing extensive test suites. Comfortable working with frontend tech such as Node, JS, HTML, CSS, Vue.js and GraphQL, moving toward full stack.

Career-long experience though most companies, performing a wide variety of DevOps Engineering tasks such as setting up production, staging and testing environments with Linux servers, including setting up services such as webservers (Nginx, Apache), mail services, cron, security and more.

Extensive experience with AWS and Docker for deployment of websites for customers. Several years of experience setting up CI/CD and scripting for version control, automated testing, static analysis and deploying websites. Confident working with IaC using YAML- and JSON-based configuration languages.

Passionate about automating repetitive tasks, high quality work, version control and documentation.

Skills

Linux (RedHat/Debian-based), Docker, AWS (CloudFormation/RDS/EC2/etc.), CI/CD (GitHub Actions, Circle CI), Bash/shell, Perl, YAML/JSON, Databases (MySQL), Webservers (Nginx/Apache), Mail technologies, PHP, Laravel framework, PHPUNIT/PEST, Version control with Git, GitHub, GitLab, SVN, JIRA, Agile methodologies, Node, Vue.js, GraphQL, SEO, QA, Penetration/security testing feedback, Mail bouncing investigations.

Experience

  • Senior Full-Stack Engineer & DevOps

    odinns.dk v/Odinn Adalsteinsson — Taastrup+Ringsted — Jan 2023 to Present (2 years) — 53 to 55 years old

    Self-employed senior full-stack developer and DevOps.

    - Freelance consultant for Worksome ApS (April-June 2023), Vue.js/Laravel/PHP/MySQL and some DevOps.
    - Developing and operating e-commerce site cupping.dk, with WordPress and WooCommerce.

  • Senior Backend Engineer

    Worksome ApS — Copenhagen — Feb 2022 to Dec 2022 (11 months) — 52 to 53 years old

    Worked with the Laravel PHP framework and MySQL database for the main product platform (the actual Worksome site for freelancers and companies), also some work with GraphQL and Vue.js. Supported the DevOps department with work on the CI/CD pipelines, running suites of tests, code quality checks and deployments.

    - Maintained the existing test suite for the platform and wrote many new tests.
    - Performed a major version upgrade of the platform from Laravel 8 to 9.
    - Created a reporting website based on code coverage output from the test suite.
    - Refactored portions of business logic in part of the codebase related to compliance.
    - Wrote and published an open source package, as part of a refactoring in the platform.
    - Helped the DevOps team with day-to-day tasks and investigations.
    - Worked with version control and code reviews in git and GitHub.
    - Wrote technical documentation for my work in Notion.
    - Worked with tasks in JIRA.

  • Senior PHP Developer & DevOps

    Dwarf A/S — Copenhagen — Nov 2015 to Jan 2022 (6 years 3 months) — 46 to 52 years old

    Senior backend developer and DevOps responsible in the PHP department. Worked on several large and smaller websites, developed in PHP, based on frameworks like Laravel. Became the primary DevOps engineer, developing hosting solutions on Linux servers for Dwarf customer websites on AWS, using Docker and AWS CloudFormation. Setup CI/CD pipelines for the major projects, using GitHub Actions. Performed many Code Reviews and worked with version control in GitHub.

    In the final years primarily worked as architect, primary DevOps and backend developer on "Husweb" for Sikkerhedsstyrelsen (sik.dk). Husweb is the new public system for creating and distributing house condition reports and electrical status reports (danish: tilstandsrapporter & el-eftersynsrapporter) in connection with the sale of private houses in Denmark. This was built with Laravel on PHP and MySQL on Linux servers. Wrote 500+ tests for the system using PHPUNIT and PEST. Setup and maintained the hosting system on the “Statens IT” (Government IT) hosting.

  • Lead Developer

    Konstellation/Republica — Copenhagen — Sep 2015 to Nov 2015 (3 months) — 46 years old

    Responsible for developing a new technical platform for the bureau websites made with WordPress and Drupal. Also performed upgrade- and support tasks on a large existing Drupal 7 website for a customer.

  • PHP/Drupal Developer

    Dwarf A/S — Copenhagen — Feb 2015 to Aug 2015 (7 months) — 45 to 46 years old

    Developed and supported customer solutions in PHP, Drupal and Tuksi (homegrown framework).

  • PHP Developer Consultant

    Sunny Rentals — Copenhagen — Nov 2014 to Jan 2015 (3 months) — 45 years old

    Developed a solution in Symfony/Doctrine for migrating partner data via XML files and a SOAP API and Amazon SQS.

  • System Specialist

    THALES (Rejsekortet) — Copenhagen — Jul 2011 to Dec 2013 (2 years 6 months) — 42 to 44 years old

    Performed a lot of scripting work with perl, converting data between formats and doing analysis on travel patterns, data warehousing, router configuration dumps, preparing morning reports for maintenance workers in the fields and many other tasks. Participated in a project doing data analysis in the BI system QlikView.

  • QA Engineer

    TELMORE A/S — Taastrup — Jun 2010 to Jun 2011 (1 year 1 month) — 41 to 42 years old

    Responsible for Quality Assurance and some DevOps tasks and performed the role of Release Manager.

    - Maintained build systems for deploying the main site based on Java, Apache and Tomcat.
    - Built an internal web portal in PHP for data extraction, version overview etc.
    - Developed several small and larger tools in perl to support the system.
    - Performed data collection for the nagios monitoring system.
    - Maintained version control with SVN and CVS.
    - Maintained JIRA and Confluence internally.

  • Self employed

    Odinns Marketing — Taastrup — Jan 2007 to Jun 2010 (3 years 6 months) — 37 to 41 years old

    In this period worked as consultant, internet marketer, webmaster, web developer etc. Continued working with TELMORE as consultant in the QA department, participating in creating a new signup flow for DSL and VoIP telephony on the main site and backend. Advising, testing reporting on quality.

    - Performed several other ad-hoc consulting tasks for TELMORE in the period.
    - Developed online marketing systems in Codeigniter/PHP/MySQL.
    - Designed and maintained 50+ websites as part of affiliate marketing campaigns.
    - Built sites built with WordPress and custom PHP/HTML/CSS.
    - Wrote daily email newsletters on internet marketing.
    - Advised on SEO, CPC and PPC marketing.
    - Blogged on internet marketing.

  • QA Engineer

    TELMORE A/S — Taastrup — Nov 2002 to Feb 2008 (5 years 4 months) — 33 to 39 years old

    Headhunted to TELMORE when the company was very young, with an important initial DevOps role in setting up version control, scaling up hosting and quality control. Responsible for Quality Assurance tasks and Release Management.

    - Developed scripts and systems for thorough testing of the business-critical billing system.
    - Maintained build systems for deploying the main site based on Java, Apache and Tomcat.
    - Developed several small and larger tools in perl to support the system.
    - Performed data collection for the nagios monitoring system.
    - Setup and maintained version control with SVN and CVS.
    - Setup and maintained JIRA and Confluence internally.
    - Was head of QA for a short period, hiring and firing.

  • System Developer

    Tiscali / World Online / Image Scandinavia — Copenhagen — Aug 1998 to Oct 2002 (4 years 3 months) — 29 to 33 years old

    Tiscali (formerly World Online and Image Scandinavia) was an internet service provider over modem phone lines, ISDN and ADSL broadband. Was largely responsible for a variety of DevOps and development tasks.

    - Developed modules for Nagios to monitor web servers, mail servers etc.
    - Developed and maintained a large mail system based on qmail.
    - Core developer on the custom billing system, built with perl.
    - Data analysis from databases and webserver logfiles.
    - Migrated billing system to another platform.
    - Responsible for the CVS version system.

  • Owner

    Goldware International — Zealand — Jul 1991 to Jul 1998 (7 years 1 month) — 22 to 29 years old

    Developer of the then very popular shareware software "GoldED", a message editor and mail reader for FidoNet and BBS systems. Originally written for MS-DOS and the QuickBBS message format, then later versions for OS/2, Windows (CLI) and Linux and adding several other popular BBS and mail formats. Marketed and sold the shareware software, including handing an affiliate program.

  • Programmer

    BioTeK — Copenhagen — May 1991 to Oct 1991 (6 months) — 22 years old

    Performed ad-hoc tasks on a ticketing system for movie theatres in Denmark and Norway, primarily with the Paradox database and Turbo Pascal. Built a statistics module in C/C++ for the ticketing system.

  • Owner

    Spektral Data Import — Birkerød — 1983 to 1984 (1 year 1 month) — 14 to 15 years old

    Self employed selling ZX Spectrum hobby computers, accessories and software from home, imported from the UK.

Education

  • Electrical Engineering

    DTU - Technical University of Denmark — Haslev — 1996 to 1998 (2 years 1 month) — 27 to 29 years old

    Studied at the now-closed branch of DTU in Haslev. Completed 2 years of study but abandoned it to
    pursue a full-time job at Image Scandinavia (which became World Online, then finally Tiscali).