Skip to content

Commit 6f4bf26

Browse files
committed
Fixes and cleanup, add a few sponsor career sites, add infrastructure to list them. Still needs a lot of visual work.
1 parent 39d9507 commit 6f4bf26

File tree

8 files changed

+49
-18
lines changed

8 files changed

+49
-18
lines changed

careers/devops.markdown

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,15 @@ postedOn: 2021-12-28
55
status: Open
66
---
77

8-
# Job Details
8+
# Description
99

10-
## Responsibilities
10+
The Haskell Foundation is looking for a DevOps engineer to take the Haskell ecosystem, primarily the Glasgow Haskell Compiler (GHC, the Haskell compiler), to the next level of stability, reliability, and performance.
11+
12+
This role spans many Haskell ecosystem projects to homogenize and improve the infrastructure used to build GHC and other core open source projects whose maintainers are interested, for instance HLS, Cabal, Stack, GHCup, core libraries, and more.
13+
14+
The successful candidate will be in the middle of it all, collaborating with developers at the forefront of making Haskell a groundbreaking, influential, and top-tier programming language. The individual will improve existing infrastructure, work on creating a shared CI and performance benchmarking system across the Haskell ecosystem, shortened CI turnaround times, and improved ability to debug failures.
15+
16+
# Responsibilities
1117

1218
* Maintain CI (continuous integration) infrastructure for GHC (the Glasgow Haskell Compiler, the leading compiler for the Haskell language), as hosted on GHC's GitLab instance.
1319
* Improve CI
@@ -18,16 +24,10 @@ status: Open
1824
* Documentation
1925
* Improvements and expansion of the GHC performance dashboard
2026

21-
## Qualifications
27+
# Qualifications
2228

2329
* Demonstrated ability to manage and simplify complexity
2430
* Collaborate with a variety of stakeholders
2531
* Can juggle multiple, conflicting priorities
2632
* Excellent written communication skills
2733

28-
The Haskell Foundation is looking for a DevOps engineer to take the Haskell ecosystem, primarily the Glasgow Haskell Compiler (GHC, the Haskell compiler), to the next level of stability, reliability, and performance.
29-
30-
This role spans many Haskell ecosystem projects to homogenize and improve the infrastructure used to build GHC and other core open source projects whose maintainers are interested, for instance HLS, Cabal, Stack, GHCup, core libraries, and more.
31-
32-
The successful candidate will be in the middle of it all, collaborating with developers at the forefront of making Haskell a groundbreaking, influential, and top-tier programming language. The individual will improve existing infrastructure, work on creating a shared CI and performance benchmarking system across the Haskell ecosystem, shortened CI turnaround times, and improved ability to debug failures.
33-

donations/sponsors/carboncloud.markdown

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ title: CarbonCloud
33
logo: /assets/images/sponsors/carboncloud/vertical3x.png
44
externalUrl: https://www.carboncloud.com/
55
level: Applicative
6+
careersUrl: https://careers.carboncloud.com/jobs
67
---

donations/sponsors/iohk.markdown

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ logo: /assets/images/sponsors/iohk/iohk-683.png
44
srcset: /assets/images/sponsors/iohk/iohk-200.png 200w, /assets/images/sponsors/iohk/iohk-400.png 400w, /assets/images/sponsors/iohk/iohk-683.png 683w
55
externalUrl: https://iohk.io/
66
level: Monad
7+
careersUrl: https://apply.workable.com/io-global
78
---

donations/sponsors/mercury.markdown

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ title: Mercury
33
logo: /assets/images/sponsors/mercury/mercury.png
44
externalUrl: https://mercury.com/
55
level: Applicative
6+
careersUrl: https://mercury.com/jobs
67
---

donations/sponsors/tripshot.markdown

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,4 +3,5 @@ title: TripShot
33
logo: /assets/images/sponsors/tripshot/Tripshot_Logo_RGB.png
44
externalUrl: https://tripshot.com/
55
level: Functor
6+
careersUrl: https://tripshot.com/careers
67
---

donations/sponsors/tweag.markdown

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@ logo: /assets/images/sponsors/tweag/tweag-683.png
44
srcset: /assets/images/sponsors/tweag/tweag-200.png 200w, /assets/images/sponsors/tweag/tweag-400.png 400w, /assets/images/sponsors/tweag/tweag-683.png 683w
55
externalUrl: https://tweag.io/
66
level: Applicative
7+
careersUrl: https://boards.greenhouse.io/tweag
78
---

site.hs

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
{-# Language ScopedTypeVariables #-}
22
{-# Language OverloadedStrings #-}
33
{-# Language ViewPatterns #-}
4-
{-# Language BangPatterns #-}
54

65
import Hakyll
76
import Data.List (sortOn)
@@ -224,9 +223,10 @@ main = hakyll $ do
224223
compile $ do
225224
sponsors <- buildBoilerplateCtx (Just "Careers")
226225
ctx <- careersCtx <$> loadAll "careers/*.markdown"
226+
hiringSponsors <- hiringSponsorsCtx <$> loadAll "donations/sponsors/*.markdown"
227227

228228
makeItem ""
229-
>>= loadAndApplyTemplate "templates/careers/list.html" ctx
229+
>>= loadAndApplyTemplate "templates/careers/list.html" (ctx <> hiringSponsors)
230230
>>= loadAndApplyTemplate "templates/boilerplate.html" sponsors
231231
>>= relativizeUrls
232232

@@ -244,7 +244,6 @@ main = hakyll $ do
244244
match "templates/*" $ compile templateBodyCompiler
245245
match "templates/**" $ compile templateBodyCompiler
246246

247-
248247
--------------------------------------------------------------------------------------------------------
249248
-- CONTEXT ---------------------------------------------------------------------------------------------
250249
--------------------------------------------------------------------------------------------------------
@@ -354,10 +353,23 @@ careersCtx reqs =
354353
listField "closedreqs" defaultContext (ofMetadataField "status" "Closed" reqs) <>
355354
defaultContext
356355

356+
hiringSponsorsCtx :: [Item String] -> Context String
357+
hiringSponsorsCtx sponsors =
358+
listField "hiringsponsors" defaultContext (filterMetadataField "careersUrl" sponsors) <>
359+
defaultContext
360+
357361
--------------------------------------------------------------------------------------------------------
358362
-- UTILS -----------------------------------------------------------------------------------------------
359363
--------------------------------------------------------------------------------------------------------
360364

365+
-- | filter list of item string based on whether or not the field exists
366+
filterMetadataField :: String -> [Item String] -> Compiler [Item String]
367+
filterMetadataField field =
368+
filterM (\item -> do
369+
mbField <- getMetadataField (itemIdentifier item) field
370+
return $ isJust mbField
371+
)
372+
361373
-- | filter list of item string based on the given value to match on the given metadata field
362374
ofMetadataField :: String -> String -> [Item String] -> Compiler [Item String]
363375
ofMetadataField field value = filterM (\item -> do

templates/careers/list.html

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -54,18 +54,32 @@ <h2 class="text-gray-50 font-normal text-3xl-4xl text-center">Working at the Has
5454
</div>
5555
</div>
5656
<div class="mt-16 md:mt-24">
57-
<div class="text-2xl-5xl text-center md:px-12">Open</div>
5857
<div class="max-w-screen-xl mx-auto grid gap-8 lg:grid-cols-2 md:px-12">
5958
$for(openreqs)$
6059
$partial("templates/careers/tile.html")$
6160
$endfor$
6261
</div>
63-
64-
<div class="text-2xl-5xl text-center md:px-12">Closed</div>
65-
<div class="max-w-screen-xl mx-auto grid gap-8 lg:grid-cols-2 md:px-12">
66-
$for(closedreqs)$
67-
$partial("templates/careers/tile.html")$
62+
</div>
63+
<div class="mt-16 md:mt-24">
64+
<div class="xl:max-w-screen-xl mx-auto md:px-12 lg:px-16">
65+
<div class="bg-gray-800 shadow-lg shadow-xl shadow-md shadow-sm px-6 sm:px-12 md:px-12 lg:px-16 py-16 md:py-20">
66+
<h2 class="text-gray-50 font-normal text-3xl-4xl text-center">Haskell Foundation Sponsors Hiring Haskellers</h2>
67+
<p class="mt-10 lg:text-xl text-gray-300 leading-relaxed text-center">
68+
Many of the Haskell Foundation's Sponsors are actively hiring Haskell engineers.
69+
</p>
70+
</div>
71+
</div>
72+
</div>
73+
<div class="text-center sm:px-12 md:px-12 lg:px-16 mt-32">
74+
<div class="mt-16 flex flex-wrap items-center justify-center"></div>
75+
$for(hiringsponsors)$
76+
<a href="$careersUrl$" target="_blank" class="block w-36 m-4"><img alt="$title$" src="$logo$"
77+
$if(srcset)$
78+
srcset="$srcset$"
79+
$endif$
80+
></a>
6881
$endfor$
6982
</div>
7083
</div>
84+
7185
</div>

0 commit comments

Comments
 (0)