greg.everydayimshuflin.com/index.html

117 lines
5.3 KiB
HTML
Raw Normal View History

2012-10-22 02:08:17 -07:00
<!DOCTYPE html>
2012-03-06 12:27:42 -08:00
<html>
2012-10-22 18:21:11 -07:00
<head>
2021-01-14 03:21:18 -08:00
<title>Greg Shuflin - Software Developer</title>
2021-01-14 02:05:44 -08:00
<meta charset='utf-8'/>
<link href="style.css" rel="stylesheet"/>
2012-03-06 12:27:42 -08:00
</head>
<body>
2015-09-07 23:58:54 -07:00
<div id='main'>
2021-01-14 03:21:18 -08:00
<h1>Greg Shuflin - Software Developer</h1>
<p>Contact me via <a class="emailLink" href="mailto:greg.shuflin+developerportfolio@protonmail.com">greg.shuflin@protonmail.com</a>
or <a href='https://www.linkedin.com/in/gregshuflin/'>LinkedIn</a>.
2017-12-13 00:08:22 -08:00
2021-01-14 03:42:28 -08:00
<p>Download a copy of <a href="./resume/Greg Shuflin resume.pdf">my resume</a>.
2021-01-14 03:21:18 -08:00
<h2>About me</h2>
2021-01-14 03:42:28 -08:00
<p>I'm a software engineer with broad expertise across several different
2017-12-13 00:08:22 -08:00
disciplines of industry software development, particularly network
2021-01-14 03:42:28 -08:00
programming, full-stack web development, and modern cloud-focused devops/Unix
systems administration. I dabble in 3d graphics, functional programming/type
theory, programming language design, and mucking about with microcontrollers
on the side, and one or another of these skillsets has come in handy before.
<p>I've shipped code in Rust, Python, C, C++, Ruby on Rails, Scala, Elm, and
Haskell. My educational credentials are a BA in Linguistics, Computer
Science and Japanese from UC Berkeley. I used to have a line here that said
"Also if you're hiring for a Rust position I'd love to talk to you.", but
since I now have a position where I spend a lot of my time writing Rust, I
suppose it worked.
2021-01-14 03:21:18 -08:00
<h2>Open-source work</h2>
<p>As part of my work at Toolchain Labs, I
<a href="https://github.com/pantsbuild/pants/commits?author=gshuflin">contribute</a>
to the <a href="https://www.pantsbuild.org/">Pants</a> build system. Much of my work
on this project has involved porting the codebase from a legacy Python execution engine
to a modern and more performant Rust execution engine.
<p>I wrote a simple Rust command line program for <a href="https://github.com/neunenak/hilite">
for highlighting stderr console output</a>, inspired by Mike Schiraldi's hilite utility, which
I used at Meraki for making the actual errors more obvious in lengthy C++ compiler output. It
is published on <a href="https://crates.io/crates/hilite">crates.io</a>.
2017-12-13 00:08:22 -08:00
2021-01-14 03:21:18 -08:00
<p>My professional Github profile is <a href="https://github.com/gshuflin">@gshuflin</a>. I have
used <a href="https://github.com/neunenak">@neunenak</a> as a personal Github profile in the past,
and am in the process of moving my personal code to a <a href="https://gitea.everydayimshuflin.com/greg">self-hosted Gitea
instance</a>.
2017-12-13 00:08:22 -08:00
2021-01-14 03:21:18 -08:00
<h2>Some personal projects</h2>
<p>A few side projects I've worked on
2015-09-13 18:14:39 -07:00
that I think are particularly interesting.
2021-01-14 03:21:18 -08:00
<div>
<h3>Schala</h3>
<p>I've been interested in programming language implementations since my college compilers class,
and interested in type theory ever since I learned about Haskell. <a href="https://gitea.everydayimshuflin.com/greg/schala">
Schala</a> is a Rust framework I've been sporadically working on to give me a place to experiment with multiple programming
language ideas, and also the name of the language I'm using this framework to implement. Schala is intended to be an
expression-based functional-encouraging programming language using ML-style types with Rust-like syntax.
</div>
<div>
2015-09-13 18:14:39 -07:00
<h3>Browser games</h3>
2021-01-14 03:21:18 -08:00
<p> These are all open-source collabrations with
2015-09-13 18:14:39 -07:00
<a href='https://github.com/AlexNisnevich'>Alex Nisnevich</a> and several
other occasional contributors.
<ul>
<li><a href="http://alex.nisnevich.com/untrusted/">Untrusted</a>
<a href="https://github.com/AlexNisnevich/untrusted" class='codeLink'>(code)</a>
2021-01-14 03:21:18 -08:00
- a Javascript roguelike. Every level is deliberately unbeatable, and
the player must edit the source code of the level in order to progress.
2015-09-13 18:14:39 -07:00
Me and <a href='https://github.com/AlexNisnevich'>Alex Nisnevich</a>
are the two primary developers.
An early version of the game won first place in
2014-03-01 00:47:46 -08:00
the Spring 2013 Berkeley CSUA hackathon.
2015-09-13 18:14:39 -07:00
<li>
<a href="https://github.com/neunenak/assholetransitbureaucrat2015">
Asshole Transit Bureaucrat 2015
</a>
2021-01-14 03:21:18 -08:00
- entry for the <a href="https://ldjam.com/">Ludum Dare</a> 33 72-hour game jam (theme "you are the monster"),
2015-09-13 18:14:39 -07:00
where the player takes on the role of a corrupt public transit bureaucrat
who is paid-off by an evil ride-sharing corporation, and tasked with
making the public bus system worse. Written in
<a href='http://elm-lang.org/'>Elm</a>, a Haskell-like pure functional
language that compiles to Javascript/HTML.
</li>
<li>
<a href='http://alexnisnevich.github.io/kalevala/'>Kalevala</a>
<a href='https://github.com/AlexNisnevich/kalevala' class='codeLink'>
(code)
</a>
- a two-player tile-placing game inspired by the board game
Völuspá by Scott Caputo. The frontend is written in Elm, the backend
is a <a href='https://github.com/neunenak/voluspa-server' class='codeLink'>fairly-simple Haskell server.</a>
</li>
</ul>
</div>
2021-01-14 03:21:18 -08:00
<div>
<h3>Other projects</h3>
2017-04-10 01:09:41 -07:00
2021-01-14 03:21:18 -08:00
<ul>
<li><a href="https://gitea.everydayimshuflin.com/greg/SNES-ASM">SNES Assembly language</a>: some experiments in writing
custom ROMs in the assembly language used by the Super Nintendo/Super Famicom/SNES.
</li>
</ul>
</div>
2012-03-06 12:27:42 -08:00
</body>
</html>