-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathexperience.dhall
More file actions
145 lines (137 loc) · 10.5 KB
/
Copy pathexperience.dhall
File metadata and controls
145 lines (137 loc) · 10.5 KB
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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
let Job
: Type
= { organization : Text
, position : Text
, duration : Text
, experiences : List Text
}
let ContactInfo
: Type
= { name : Text, email : Text, github : Text }
let Project
: Type
= { name : Text, url : Text, description : List Text }
let Resume
: Type
= { contact : ContactInfo, history : List Job, projects : List Project }
let contact
: ContactInfo
= { name = "Jonathan Strickland"
, email = "djanatyn@gmail.com"
, github = "https://github.com/djanatyn"
}
let history
: List Job
= [ { organization = "Filament"
, position = "Software Engineer"
, duration = "April 2025 - Now"
, experiences =
[ "Created an end-to-end search system for the member directory of Filament's AI-powered chat platform, designing OpenSearch schemas through four iterations with autocomplete, fuzzy matching, and semantic vector search, implementing zero-downtime reindexing, and decommissioning the legacy search endpoint after production cutover"
, "Led initial implementation of Activity Center real-time notification system, authoring RFC for RabbitMQ integration and implementing the connection pool, producer/consumer infrastructure, and endpoint integration, then onboarding team members to extend the system with additional features"
, "Significantly expanded internal CLI tooling, adding subcommand families for ECS deployments, secrets management, Terraform operations, Datadog monitoring, and production debugging, establishing it as a central interface for daily engineering workflows"
, "Developed MCP (Model Context Protocol) plugin for Matrix homeserver enabling AI agents to interact with the messaging platform, implementing OAuth 2.1 + PKCE authentication, Postgres-backed session state, and 13 tools for channel operations and messaging"
, "Established observability practices across the engineering team, integrating Datadog APM and OpenTelemetry tracing into Python and Rust services, creating a shared instrumentation library (filament-otel) to standardize tracing, and instrumenting push notification delivery paths to diagnose production issues"
, "Created cli-events-consumer (Rust), an event-driven pipeline (EventBridge, Lambda, Kafka) that captures CLI invocations and deployments, providing deployment visibility through Datadog dashboards, real-time Matrix notifications of environment activity, and automated Terraform plan comments on pull requests"
, "Migrated local Terraform workspace configurations to HCP Terraform and built CloudAMQP infrastructure for managed RabbitMQ deployment"
]
}
, { organization = "Mercury"
, position = "Senior Software Engineer, User Management"
, duration = "May 2024 - December 2024"
, experiences =
[ "Worked on planning, risk evaluation, risk mitigation, sequencing, and implementation of \"customizable roles\", allowing end-users to define their own user roles with associated permissions and account access"
, "Helped to centralize authorization logic spread throughout the codebase into one backend policy, while adapting frontend component authorization logic to defer to the backend as a source of truth"
, "Regularly participated in 2-week interrupt rotation for user management team, responding to customer incidents related to authorization issues"
]
}
, { organization = "Oso HQ"
, position = "Software Engineer"
, duration = "November 2022 - November 2023"
, experiences =
[ "Implemented <a href=\"https://www.osohq.com/docs/guides/develop/policy-tests\">Policy Testing for Oso Cloud</a>, extending the syntax of the Polar programming language to support unit tests, with Oso Cloud executing and reporting results of authorization test cases"
, "Worked on a team to brainstorm, prototype, and ship the <a href=\"https://ui.osohq.com/modeler\">Oso Modeler</a>, a tool for constructing executable authorization policies from descriptions of authorization requirements"
, "Extended Polar lexer to intern comments, and prototyped a Polar automatic code-formatter preserving comments with their associated definitions"
, "Provided regularly scheduled customer support in developing and troubleshooting Polar authorization policies, along with a traditional scheduled production on-call rotation maintaining the Oso Cloud service"
]
}
, { organization = "Metafy"
, position = "Senior Software Engineer"
, duration = "June 2022 - September 2022"
, experiences =
[ "Backend Ruby development work using Hanami, Algolia, and GraphQL"
, "Documented onboarding process to new codebase, highlighting challenges encountered in a shared \"Things I Got Stuck on in the Codebase\" document"
, "Investigated and implemented enhancements to search indexes, enabling filtering coaches by additional criteria (character, position, popularity) in real-time"
]
}
, { organization = "Recurse Center"
, position = "Participant"
, duration = "March 2022 - June 2022"
, experiences =
[ "Attended a self-directed educational retreat for 12 weeks to improve my skills as a programmer"
, "Reverse-engineered Super Smash Brothers Melee GameCube, creating a Rust program \"melee-inject\" to build new executable game images with replaced character textures"
, "Presented work in front of peers: <a href=\"https://docs.google.com/presentation/d/1sEnkbk3dOctiymV7YUATbzXb3zh2dj_D302XuHYNHi8/edit?usp=sharing\">\"Parsing and Transforming Super Smash Bros. Melee\"</a>"
, "Presentation was featured as the first <a href=\"https://www.youtube.com/watch?v=KejJrmT590g\">\"Dispatches at RC\"</a> upload"
]
}
, { organization = "American Eagle Outfitters"
, position = "Systems Engineer"
, duration = "December 2016 - January 2022"
, experiences =
[ "Built relationships with technology teams across the organization, working to understand needs, improving efficiency of code lifecycle and promotion pipeline"
, "Installed, patched, maintained, and upgraded diverse infrastructure including Atlassian Bamboo, Bitbucket, Concourse CI, JIRA, JFrog Artifactory, Pivotal CloudFoundry, F5 BIG-IP LTM"
, "Developed and maintained continuous integration pipelines for applications and provisioned infrastructure, empowering teams to create pull requests to apply changes, using Python, Bash, Rust, Haskell"
, "Worked in multidisciplinary team for initial deployment of eCommerce API Gateway, solving performance and reliability problems along the way"
, "Used Terraform to provision cloud environments, developing modules for different components of American Eagle infrastructure on AWS, GCP, GKE"
, "First responder for on-call rotation, addressing production AE.com issues, failures in build + deployment automation"
, "Used Terraform + Bamboo to create self-service \"ephemeral environments\" - when any UI developer opens a pull request, a new environment is launched, the new code is deployed, a DNS record is set up, the developer is sent a link to the live environment on their pull request to validate"
, "Received many awards and nominations from peers and managers, including 2019 Eagles Elite \"in recognition of your determination to go above and beyond at AEO and exemplifying innovation and teamwork\""
]
}
, { organization = "Industry Weapon"
, position = "Contractor"
, duration = "December 2015 - June 2016"
, experiences =
[ "Evangelized greater use of version control, unit tests, documentation among my teams, resulting in a self-hosted gogs (go git service) instance (eventually was used by all development teams)"
, "Developed and shipped many custom software integrations for our digital signage platform using modern development practices to meet customer needs, regularly automating time-consuming parts of the development process"
, "Used Flask to develop secure, RESTful APIs with token-based authentication to serve as a backend for web applications"
, "Automated deployment process for Python applications using single executable with dependencies and application code self-contained inside"
, "Identified, documented, began discussions about RCE vulnerabilities in core parts of our codebase"
, "Worked with other developers to fix bugs in a decade old PHP web application using Bugzilla"
]
}
, { organization = "Cytobank"
, position = "System Administrator"
, duration = "January 2014 - August 2015"
, experiences =
[ "Used Puppet and Ruby scripting extensively to automate configuration of dev and prod servers"
, "Participated in regular on-call rotations, responded to production outages"
, "Worked on a team of 3 to facilitate migration of customers from physical OpenVZ hosting provider to AWS, organizing downtime, executing migration for most hosts"
, "Educated rest of team on infrastructure through meetings, recorded videos, thorough documentation"
]
}
]
: List Job
let projects
: List Project
= [ { name = "melee-inject"
, url = "https://github.com/djanatyn/melee-inject"
, description =
[ "Rust reverse-engineering project to replace character texture files in Super Smash Bros. Melee for the Nintendo GameCube"
, "Transforms GCM filesystem table, replacing existing file entries and adjusting subsequent offsets, adding necessary padding"
, "Uses `codegen` crate to generate structs (with doc comments) for every character's data files"
]
}
, { name = "resume"
, url = "https://github.com/djanatyn/resume"
, description =
[ "Haskell project to generate this resume! (demonstrating reproducible build principles)"
, "Uses dhall for structured input data, blaze-html for generating markup, nix for managing build instructions + dependencies"
, "pdf generated using wkhtmltopdf and custom stylesheet"
]
}
]
: List Project
let resume
: Resume
= { contact, history, projects }
in resume