~wuz/wuz.sh

d94efb3c5fbd9c7f395c683496f8b309bde329ec — wuz 4 months ago 59c2e38
Add resume
M .eleventy.js => .eleventy.js +17 -17
@@ 104,23 104,23 @@ module.exports = (config) => {

	const md = markdownIt(options);

	// md.use(mdContainer, "aspect", {
	//   validate: function(params) {
	//     return params.trim().match(/^aspect\s+(.*)$/);
	//   },

	//   render: function(tokens, idx) {
	//     var m = tokens[idx].info.trim().match(/^aspect\s+(.*)$/);

	//     if (tokens[idx].nesting === 1) {
	//       // opening tag
	//       return `<figure style="--aspect-ratio:${md.utils.escapeHtml(m[1])}">`;
	//     } else {
	//       // closing tag
	//       return "</figure>\n";
	//     }
	//   }
	// });
	md.use(mdContainer, "aspect", {
	  validate: function(params) {
	    return params.trim().match(/^aspect\s+(.*)$/);
	  },

	  render: function(tokens, idx) {
	    var m = tokens[idx].info.trim().match(/^aspect\s+(.*)$/);

	    if (tokens[idx].nesting === 1) {
	      // opening tag
	      return `<figure style="--aspect-ratio:${md.utils.escapeHtml(m[1])}">`;
	    } else {
	      // closing tag
	      return "</figure>\n";
	    }
	  }
	});
	md.use(mdAttrs);
	config.setLibrary('md', md);
};

M _includes/layouts/head.njk => _includes/layouts/head.njk +1 -0
@@ 5,6 5,7 @@
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>{{ title }}</title>
    <link rel="stylesheet" href="/css/main.css" />
    {% block extra_css %}{% endblock %}
    <script src="/js/main.js" async></script>
  </head>
  <body

A _includes/layouts/resume.njk => _includes/layouts/resume.njk +10 -0
@@ 0,0 1,10 @@
{% include "./head.njk" %}
{% block extra_css %}
<link rel="stylesheet" href="/css/resume.css" />
{% endblock %}
<main class="resume container padding:4 padding:4:bottom">
  {{ content | safe }}
</main>
</body>
</html>
{% include "./footer.njk" %}

M _includes/styles/generics/html.scss => _includes/styles/generics/html.scss +5 -0
@@ 43,3 43,8 @@ a {
svg {
	fill: currentColor;
}

hr {
	border: none;
	border-bottom: 1px solid var(--c-gray-haze);
}

A _includes/styles/resume.scss => _includes/styles/resume.scss +22 -0
@@ 0,0 1,22 @@
main.resume {
  @for $h from 1 to 6 {
    h$h {
      font-size: px(typescale(r(10-$h)));
      font-variation-settings: var(--mono), var(--casl), "wght" 800, var(--slnt),
        var(--ital);
      line-height: 1.1em;
    }
  }

  blockquote {
    border-left: 5px solid var(--c-brand);
    padding: 16px 32px;
  }
}


@media print {
	body {
		--base-font-size: 12px;
	}
}

M assets/resume.pdf => assets/resume.pdf +0 -0
R css/styles.11ty.js => css/main.11ty.js +0 -0
A css/resume.11ty.js => css/resume.11ty.js +39 -0
@@ 0,0 1,39 @@
const fs = require("fs");
const path = require("path");
const postcss = require("postcss");

const functions = require("./utils");

/*
 * Plugins
 */
const precss = require("precss");
const cssFunctions = require("postcss-functions");
const cssnano = require("cssnano");
const postcssScss = require("postcss-scss");

const fileName = "resume.scss";

module.exports = class {
  async data() {
    const rawFilepath = path.join(__dirname, `../_includes/styles/${fileName}`);
    return {
      permalink: `css/resume.css`,
      rawFilepath,
      rawCss: await fs.readFileSync(rawFilepath),
    };
  }

  async render({ rawCss, rawFilepath }) {
    return await postcss()
      .use(precss())
      .use(cssFunctions({ functions }))
      .use(
        cssnano({
          preset: "default",
        })
      )
      .process(rawCss, { from: rawFilepath, syntax: postcssScss })
      .then((result) => result.css);
  }
};

M index.html => index.html +3 -1
@@ 7,7 7,9 @@ title: Howdy, I'm Wuz!
	<header class="pos:rel">
		<h1 class="typescale:17 wght:900 text-gradient:hacker drop-shadow:gray-haze">Howdy, I'm Wuz.</h1>
	</header>
	<h2 class="typescale:8 margin:1:bottom">Software engineer working to help other engineers learn and grow.</h2>
	<h2 class="typescale:8 margin:1:bottom">Software engineer working to help other engineers learn and grow.
	<a href="/resume" class="margin:1:right">I'm looking for work!</a>
	</h2>
	<div>
		<h3 class="typescale:6">Current Focuses</h3>
		<ul>

A resume.md => resume.md +71 -0
@@ 0,0 1,71 @@
---
layout: layouts/resume
title: Conlin Durbin -- 2021 Resume
---

<h1 class="typescale:10 wght:900 text-gradient:hacker drop-shadow:gray-haze">Howdy, I'm Wuz  <br /> and I'm looking for a job!</h1>

## About Me


## Bio

> Senior software engineer with extensive experience in modern frontend technologies. Focused on building performant, accessible front-ends using modern Javascript and React, CSS/SCSS, GraphQL/Apollo, and modern frontend tooling like Storybook and webpack. Substantial experience with developer tools like git, Github Actions, Nix, and Docker.

### Around the web...

- [LinkedIn](https://linkedin.com/in/wuz)
- [dev.to](https://dev.to/wuz)
- [Github](https://github.com/wuz)
- [Twitter](https://twitter.com/CallMeWuz)

### What I'm looking for...

Senior engineering opportunities at a company with strong DEI initiatives, good engineering practices, and a focus on culture and people.

### Must-haves
- Strong DEI initiatives
- Focus on employee wellbeing
- A desire to build accessible, performant applications that solve customer needs
- Good engineering culture
    - Engineers with strong opinions and a desire to communicate
    - A good culture for open discussion and consensus reaching
    - Growth opportunities for engineers
    - Desire to mentor and grow junior engineers
- Remote-first culture

### Nice-to-haves
- React/Rails Tech Stack
- Medium sized company (50-500)
- Opportunities to help build systems and processes

    ---

## Work Experience

#### HackerRank
(Senior Software Engineer)
February 2019 - Present

While working at HackerRank, I've built out a number of new features, working with a new team to build out a platform for conducting virtual career fairs for college computer science programs, developing a mini-ATS platform for tracking engineering job applications, and building out plans for a design system and UI component library. I worked to implement StorybookJS, Github Actions, and new component architecture in that UI component library as well as architected a GraphQL solution to integrate data from across multiple microservices into a single source of truth.


#### Lessonly
(Software Engineer)
August 2018 - February 2019

At Lessonly, I worked on many different teams and projects. I started my time integrating the work some contractors did on the Lessonly Chrome Extension into the larger codebase of the company. I then joined the Practice feature team, working on discovery and delivery of new features in a greenfield project. While I focused primarily on frontend development, I also spent a good amount of time working with Ruby on Rails. As a Discovery Engineer for the team, I worked closely with designers, researchers, and customers to plan and architect new features.


#### MimirHQ 
Full-stack Engineer
January 2017 - August 2018

Developed a product helping CS educators grade projects and assignments. Implemented a plagiarism detection algorithm. Proposed, planned, and implemented multiple accessibility features.

---

### Education
**Purdue University**
Major: B.S. Economics
Minor: Computer Science