123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212 |
- <!doctype html>
- <html lang="en">
- <head>
- <meta charset="UTF-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <meta name="description" content="I have been working with computers for over twenty years and love to solve technical and business problems for a fair price." />
- <title>Aneurin Barker Snook</title>
- <link x-data="font" rel="preload" as="style" onload="this.onload=null; this.rel='stylesheet'" x-bind:href="url">
- </head>
- <body>
- <main x-data="external">
- <section id="top">
- <header>
- <h1>
- <span>Aneurin</span>
- <span>Barker Snook</span>
- </h1>
- </header>
- <p><strong>Software engineer extraordinaire</p>
- <p>I have been working with computers for over twenty years and love to solve technical and business problems for a fair price.</p>
- <p>
- I am a skilled and imaginative programmer with deep insight and excellent communication skills⸺and
- a keen collaborator with colleagues in all aspects of business, including other engineers, project management, sales and marketing, and leadership.
- </p>
- <p>
- <a href="#contact" data-umami-event="Jump to contact">Let me know what I can do for you,</a> or read on to learn more about me and what I might be able to offer.
- </p>
- </section>
- <section id="services">
- <header>
- <h2>Services</h2>
- </header>
- <p>
- I specialise in full-stack software development, and I also offer a vast breadth of skills
- and knowledge in many aspects of business and operations.
- </p>
- <ul>
- <li>Software architecture and implementation</li>
- <li>Software integrations and API design</li>
- <li>Infrastructure, methodology and documentation</li>
- <li>Web UI/UX design and implementation</li>
- <li>Code review, debugging, and profiling</li>
- <li>Security audits</li>
- <li>Legacy platform maintenance and migration</li>
- <li>Requirements gathering, stakeholder engagement, and R&D</li>
- <li>Technical leadership and mentoring</li>
- <li>Consulting</li>
- </ul>
- <p>
- I am always open to new challenges. <a href="#contact" data-umami-event="Jump to contact">Send me a message</a> to let me know what I can help you with.
- </p>
- </section>
- <section id="skills" x-data="skills">
- <header>
- <h2>Skills</h2>
- </header>
- <p>
- Are you looking for expertise in a specific domain? This list provides an overview of pretty much everything I know.
- If you have any questions, or something you need isn't on the list, <a href="#contact" data-umami-event="Jump to contact">get in touch</a> and I'd be happy to talk about it.
- </p>
- <div class="data-view">
- <nav class="tags filter">
- <header>
- <h3>Filter</h3>
- </header>
- <template x-for="tag in tags" :key="tag">
- <a x-bind:class="tagClass(tag)" x-on:click="setCurrentTag" x-text="tag" x-bind:href="`?skill=${tag}`" x-bind:data-tag="tag"></a>
- </template>
- </nav>
- <ul class="data">
- <template x-for="skill in visibleSkills">
- <li>
- <header>
- <h3>
- <span x-bind:title="`Tags: ${skill.tags.join(', ')}`" x-text="skill.name"></span>
- </h3>
- </header>
- <template x-if="descriptions">
- <p class="description" x-text="skill.description"></p>
- </template>
- </li>
- </template>
- </ul>
- </div>
- <template x-if="descriptions">
- <p>
- To see a bit less information, <a href="#" x-on:click="toggleDescriptions" href="">hide descriptions</a>.
- </p>
- </template>
- <template x-if="!descriptions">
- <p>
- To see even more information, <a x-on:click="toggleDescriptions" x-bind:href="`?descriptions=1`">show descriptions</a>.
- </p>
- </template>
- </section>
- <section id="work">
- <header>
- <h2>Work</h2>
- </header>
- <p>
- You are welcome to browse <a x-bind:href="codeUrl" target="_blank">my public code online</a>, including the <a x-bind:href="repoUrl" target="_blank" data-umami-event="Clicked link" data-umami-event-link="Website code">code of the website you're looking at right now</a>.
- </p>
- <p>
- I also have an extensive history of professional work that I am happy to discuss in general terms.
- Please <a href="#contact" data-umami-event="Jump to contact">send me a message</a> if you'd like to know more.
- </p>
- </section>
- <section id="pricing">
- <header>
- <h2>Pricing</h2>
- </header>
- <p>
- I am happy to negotiate a rate that works for you:
- </p>
- <ul>
- <li>Day rate or hourly rate</li>
- <li>Fixed project cost</li>
- <li>Out-of-hours retainer</li>
- <li>Reduced rates for charitable organisations</li>
- </ul>
- <p>
- <a href="#contact" data-umami-event="Jump to contact">Get in touch</a> to discuss what you need from me.
- </p>
- </section>
- <section id="availability">
- <header>
- <h2>Availability</h2>
- </header>
- <p>
- I am currently offering <span class="cta">availability</span> to work.
- </p>
- <p>
- I have a fully-equipped private office and favour remote working.
- I am able to join captioned video calls or discuss your needs by email or instant messaging.
- </p>
- <p>
- if you would like to see me in person, I am based in Nottingham (UK) and willing to travel, within reason, for meetings or hybrid working.
- </p>
- </section>
- <section id="contact">
- <header>
- <h2>Contact</h2>
- </header>
- <p>
- The best way to reach me is by email.
- Send a message to <a x-bind:href="`mailto:${email}`" x-text="email" data-umami-event="Clicked link" data-umami-event-link="Email"></a> summarising what you're looking for⸺or just to say hello!
- I look forward to hearing from you.
- </p>
- <p>
- You can also find me on <a x-bind:href="githubUrl" target="_blank" data-umami-event="Clicked link" data-umami-event-link="GitHub">GitHub</a> and <a x-bind:href="linkedinUrl" target="_blank" data-umami-event="Clicked link" data-umami-event-link="LinkedIn">LinkedIn</a>.
- </p>
- </section>
- </main>
- <div x-data="color" id="color">
- <button title="Change colour scheme" x-on:click="rotateColorScheme" data-umami-event="Change colour scheme">
- <template x-if="currentScheme === 'auto'">
- <!-- clock @ https://heroicons.com/mini -->
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-5">
- <path fill-rule="evenodd" d="M10 18a8 8 0 1 0 0-16 8 8 0 0 0 0 16Zm.75-13a.75.75 0 0 0-1.5 0v5c0 .414.336.75.75.75h4a.75.75 0 0 0 0-1.5h-3.25V5Z" clip-rule="evenodd" />
- </svg>
- </template>
- <template x-if="currentScheme === 'light'">
- <!-- sun @ https://heroicons.com/mini -->
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-5">
- <path d="M10 2a.75.75 0 0 1 .75.75v1.5a.75.75 0 0 1-1.5 0v-1.5A.75.75 0 0 1 10 2ZM10 15a.75.75 0 0 1 .75.75v1.5a.75.75 0 0 1-1.5 0v-1.5A.75.75 0 0 1 10 15ZM10 7a3 3 0 1 0 0 6 3 3 0 0 0 0-6ZM15.657 5.404a.75.75 0 1 0-1.06-1.06l-1.061 1.06a.75.75 0 0 0 1.06 1.06l1.06-1.06ZM6.464 14.596a.75.75 0 1 0-1.06-1.06l-1.06 1.06a.75.75 0 0 0 1.06 1.06l1.06-1.06ZM18 10a.75.75 0 0 1-.75.75h-1.5a.75.75 0 0 1 0-1.5h1.5A.75.75 0 0 1 18 10ZM5 10a.75.75 0 0 1-.75.75h-1.5a.75.75 0 0 1 0-1.5h1.5A.75.75 0 0 1 5 10ZM14.596 15.657a.75.75 0 0 0 1.06-1.06l-1.06-1.061a.75.75 0 1 0-1.06 1.06l1.06 1.06ZM5.404 6.464a.75.75 0 0 0 1.06-1.06l-1.06-1.06a.75.75 0 1 0-1.061 1.06l1.06 1.06Z" />
- </svg>
- </template>
- <template x-if="currentScheme === 'dark'">
- <!-- moon @ https://heroicons.com/mini -->
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-5">
- <path fill-rule="evenodd" d="M7.455 2.004a.75.75 0 0 1 .26.77 7 7 0 0 0 9.958 7.967.75.75 0 0 1 1.067.853A8.5 8.5 0 1 1 6.647 1.921a.75.75 0 0 1 .808.083Z" clip-rule="evenodd" />
- </svg>
- </template>
- </button>
- </div>
- <div x-data="analytics">
- <template x-if="scriptUrl && websiteId">
- <script defer x-bind:src="scriptUrl" x-bind:data-website-id="websiteId"></script>
- </template>
- </div>
- <script type="module" src="/src/main.ts"></script>
- </body>
- </html>
|