~samhh/samhh.com

ref: 66ac37f01a3834ae8c8f6faa02fefbbc293eeaf8 samhh.com/layouts/page/resume.html -rw-r--r-- 4.9 KiB
66ac37f0 — Sam A. Horvath-Hunt Arch -> NixOS 3 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
{{ define "main" }}
  <p className="resume-intro">
    <strong>Software Engineer</strong>&nbsp;Hi there! I'm a software
    engineer based in London, working remotely, with a passion for pure
    functional programming.
  </p>

  <blockquote class="resume-quote">
    <q>Quality is pride of workmanship.</q> — W. Edwards Deming
  </blockquote>

  <p>
    I've been writing code professionally for around {{ div (sub now.Unix (time (index (sort $.Site.Data.resume.positions "startDate" "asc") 0).startDate).Unix) (mul 60 (mul 60 (mul 24 365))) }} years now. If you'd like
    to see what open source software I work on in my free time, check out my
    software page via the link at the top.
  </p>

  <p>
    In my current position at Adaptavist, in the ScriptRunner Cloud team,
    I've been pioneering a number of frontend and serverless initiatives.
    These range from refactoring everything into strict, functional
    TypeScript, to encouraging us towards better testing practices,
    introducing property-based testing and page-level integration testing.
    A major redesign of a parser core to our business is currently
    planned, to which end I've written a greenlit prototype in Haskell in
    the style of a recursive descent parser.
  </p>

  <section class="resume-section">
    <h1 class="resume-section-heading">Programming</h1>

    <p>
      I care deeply about writing business logic and applications more
      broadly in the safest, most maintainable manner possible. I
      leverage the type system to encode logical invariants and
      eradicate certain classes of bugs. I write testable code and write
      good tests for that code, emphasising quality of tests over
      chasing potentially worse-than-useless coverage targets. Whilst it
      can be taken to an extreme, I do believe's there's truth in the
      idea of "self-documenting code". Where that isn't possible, I
      write concise, helpful documentation, planning for the long-term.
      I use tooling like Git effectively, including leaving a
      semantically meaningful, atomic commit log behind.
    </p>
  </section>

  <section class="resume-section">
    <h1 class="resume-section-heading">Web</h1>

    <p>
      My career thus far has been dominated by the web and particularly
      thereof the frontend. Early on in my career I specialised somewhat
      in CSS, though I've since heavily shifted towards programming
      itself so to speak. I've retained that hard-fought understanding
      of CSS. I've been writing and utilising APIs throughout, be they
      more traditional or in the form of microservices. I can
      comfortably interact with the DOM manually but would sooner reach
      for a reactive abstraction.
    </p>
  </section>

  <section class="resume-section">
    <h1 class="resume-section-heading">Open Source</h1>

    <p>
      I am ideologically tied to and have great faith in the open source
      community. To this end I contribute patches where I can, maintain
      a modest collection of my own software, and maintain some AUR
      packages. This is an area I intend to further grow into.
    </p>
  </section>

  <section class="resume-section">
    <h1 class="resume-section-heading">Learning & Teaching</h1>

    <p>
      I spend a significant proportion of my free time learning, and I
      enjoy sharing that knowledge with others; I routinely pair with
      colleagues and help them through challenges. This is a very large
      part of what drives me on a daily basis.
    </p>
  </section>

  <section class="resume-section">
    <h1 class="resume-section-heading">Workplace</h1>

    <p>
      I've been working permanently remotely since 2018. The
      flexibility suits me given my self-driven nature.
    </p>

    <p>
      I've built my own computer and run NixOS on it. This is the
      machine on which I do all my work, professional and personal,
      and everything else; there is a meaningful productivity gain for
      me here both in the power of the hardware and the
      configurability of the software.
    </p>

    <p>
      Sometimes my cat likes to join me when I'm programming. He is an
      invaluable source of inspiration and unintended keystrokes.
    </p>
  </section>

  <section class="resume-section">
    <h1 class="resume-section-heading">Keywords</h1>

    <p>
      I appreciate you may be in a hurry and want to quickly parse
      this page for a particular keyword, likely a technology. Here
      follows a non-exhaustive list in no particular order of a bunch
      of things I know at least a reasonable amount about:
    </p>

    <p>
      Keywords: <em>{{ delimit $.Site.Data.resume.keywords ", " }}</em>
    </p>
  </section>

  <section class="resume-section">
    <h1 class="resume-section-heading">Jobs</h1>

    {{ range sort $.Site.Data.resume.positions "startDate" "desc" }}
      {{- partial "experience.html" . -}}
    {{ end }}

    <p>References available upon request.</p>
  </section>
{{ end }}