-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbio.html
180 lines (179 loc) · 11.3 KB
/
bio.html
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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
<head>
<meta charSet="utf-8" />
<title>Sean MacPherson</title>
<meta name="author" content="Sean MacPherson">
<link rel="canonical" href="https://www.seanmacpherson.com" />
<link rel="shortcut icon" type="image/png" href="favicon.png">
<link rel="stylesheet" href="styles.css">
<html lang="en">
</head>
<body>
<div class="layout">
<div class="content">
<div class="section">
<a href="index.html">~ Take me home</a>
</div>
<div class="section">
<h3>June 2024 to now | Traveling</h3>
<p>I'm taking some time off to travel, work on personal projects, and chart out what's next. Stay tuned!
</p>
</div>
<div class="section">
<h3>January 2023 to June 2024 | Snowflake</h3>
<p>After Myst was acquired, I spent a year and a half working to improve Snowflake's
<a href="https://docs.snowflake.com/en/guides-overview-ai-features">machine learning
capabilities</a>.
</p>
<p>
During my first few weeks, I collaborated with the team to share our expertise in
developing production machine learning systems. This involved sharing knowledge about our
APIs, time series database, model training and inference platform, and hyperparameter tuning
services.
</p>
<p> I then worked on a nimble team to design and implement Snowflake's first semantic search
functionalities. We shipped early access support for built-in vector distance functions, created
services for approximate vector search and text embedding generation, and contributed to <a
href="https://www.youtube.com/watch?v=-SQXxxKRRFU">Frosty</a>, an
LLM-powered chatbot built for Snowflake. These efforts helped pave the way for native <a
href="https://docs.snowflake.com/en/sql-reference/data-types-vector">vector data
types</a>, <a
href="https://docs.snowflake.com/user-guide/snowflake-cortex/vector-embeddings">embedding
generation</a>, and <a
href="https://docs.snowflake.com/en/user-guide/snowflake-cortex/vector-embeddings#vector-similarity-search">search</a>.
</p>
<p>
Motivated by a desire to learn more about performant and secure systems programming, I transitioned
to the <a href="https://www.snowflake.com/en/data-cloud/snowpark/">Snowpark</a> Execution
Environment
team. This team was responsible for the platform that powered many machine learning features
like <a href="https://docs.snowflake.com/en/developer-guide/snowflake-ml/overview">Snowflake ML</a>
and
<a href="https://docs.snowflake.com/en/guides-overview-ml-functions">ML Functions</a>. I
focused on
optimizing Python environment creation for interactive workloads like <a
href="https://www.snowflake.com/en/data-cloud/overview/streamlit-in-snowflake/">Streamlits</a>
and <a href="https://docs.snowflake.com/en/user-guide/ui-snowsight/notebooks">Notebooks</a>, and
<a
href="https://www.snowflake.com/engineering-blog/accelerating-hyperparameter-tuning-snowflake-ml/">improving
support</a> for memory and compute-intensive workloads like <a
href="https://docs.snowflake.com/en/developer-guide/snowflake-ml/modeling#label-snowflake-ml-modeling-distributed-hyperparameter">distributed
hyperparameter optimization</a>.
</p>
</div>
<div class="section">
<h3>September 2018 to January 2023 | Myst AI (acquired by Snowflake)</h3>
<p>In September 2018, I joined Myst as the founding engineer. Over the next four and a half years, I
sharpened my
software engineering and machine learning skills, and learned how to build products and grow a
team.</p>
<p>
I worked on all parts of our technical stack. Some of the projects the team shipped that I'm most
proud of include our <a
href="https://patents.google.com/patent/US11367007B2/">networks-of-time-series</a>
data model, relational and <a href="https://docs.myst.ai/docs/query-time-series-data">time series
data persistence</a>
layers, <a href="https://docs.myst.ai/docs/create-a-network-of-time-series">model graph building
experiences</a>, <a href="https://docs.myst.ai/reference/create_project">REST
APIs</a>,
<a href="https://pypi.org/project/myst-alpha/">clients</a>, <a
href="https://docs.myst.ai/docs/model-connectors">modeling libraries</a>,
model training and
inference platform, model definition libraries, and <a
href="https://medium.com/myst-ai-insights/bringing-experimentation-to-the-myst-platform-a97537e18f1d">backtesting</a>
and <a
href="https://medium.com/myst-ai-insights/hyperparameter-optimization-hpo-in-the-myst-platform-dbeeeecb695c">hyperparameter
tuning services</a>.
</p>
<p>
I spent most of my time programming, leveraging a wide array of technologies, including:
<p>
<ol>
<li>machine learning techniques and libraries like
<a href="https://en.wikipedia.org/wiki/Bayesian_optimization">Bayesian optimization</a>, <a
href="https://en.wikipedia.org/wiki/Autoregressive_model">autoregressive
models</a>,
<a href="https://numpy.org">Numpy</a>, <a href="https://pandas.pydata.org">Pandas</a>,
<a href="https://docs.ray.io/en/latest/index.html">Ray</a>, <a
href="https://xgboost.readthedocs.io/en/stable/">XGBoost</a>, and <a
href="https://scikit-learn.org/stable/">Scikit-Learn</a>;
</li>
<li>infra like <a href="https://cloud.google.com">Google Cloud Platform</a>, <a
href="https://kubernetes.io">Kubernetes</a>, <a href="https://www.mysql.com">MySQL</a>, <a
href="https://www.postgresql.org">PostgreSQL</a>,
<a href="https://cloud.google.com/bigtable">BigTable</a>, <a
href="https://cloud.google.com/spanner">Spanner</a>, and <a
href="https://cloud.google.com/pubsub">Pub/Sub</a>;
</li>
<li>and libraries for building web services like <a
href="https://flask.palletsprojects.com/en/3.0.x/">Flask</a>, <a
href="https://fastapi.tiangolo.com">FastAPI</a>, and <a
href="https://react.dev">React.js</a>.
</li>
</ol>
<p>
In addition to my technical work, I contributed to our culture, engineering roadmaps and
processes,
hiring,
mentorship, and team-building.
</p>
<p>
I also did some apprenticeships with coworkers to round out my data science and business
development
skills and learn how other parts of the business functioned. There was no shortage of work to be
done at Myst so I tried to contribute where I could.</p>
</div>
<div class="section">
<h3>August 2015 to September 2018 | Undergrad & Internships</h3>
<p>I took a non-traditional path through my undergraduate studies that gave me a wide range of academic
experiences. I started at <a href="https://www.cmu.edu">Carnegie Mellon University</a> studying
Biomedical Engineering, attended a
community college in the Bay Area, and then transferred to <a href="https://www.pomona.edu">Pomona
College</a> where I studied Computer
Science and Cognitive Science & Linguistics.
</p>
<p>
I played Division III soccer for Carnegie Mellon and Pomona, which took most of my time during the
fall semesters. During community college, I was a math tutor, member of student government, and
hosted a podcast for the school newspaper. At Pomona, I was an associate at <a
href="https://www.pomonaventures.com">Pomona Ventures</a>, a
student-run entrepreneurship club, helped organize the 5C Hackathon, and did <a
href="https://github.com/mgree/tmpl/tree/smacpher">language topic modeling
research</a> with
a professor.
</p>
<p>
In the summer after my freshman year, I interned at <a
href="https://store.google.com/us/category/connected_home">Google Nest</a>. I worked with one of
the future Myst
co-founders to build an ETL framework with <a href="https://airflow.apache.org">Airflow</a>,
<a href="https://cloud.google.com/products/dataflow">Dataflow</a>, and <a
href="https://kubernetes.io">Kubernetes</a> to evaluate the
performance of the Nest <a href="https://support.google.com/googlenest/answer/9257400">Home/Away
Assist</a> algorithm across devices in the wild. Eventually, the framework was adopted by
multiple
teams
to scale their data pipelines.
</p>
<p>
In the summer after my sophomore year, I backpacked with friends through South East Asia.
</p>
<p>
In the summer after my junior year, I returned to Google Nest, and worked on a simulator to test
Smart Home
algorithms.</p>
</div>
<div class="section footer">
<p>Sean MacPherson</p>
<p>·</p>
<p>
48°52.6'S 123°23.6'W
</p>
<p>·</p>
<a class="socials" href="https://www.linkedin.com/in/sean-macpherson" title="LinkedIn"><img
src="assets/linkedin-logo.svg"></a>
<a class="socials" href="https://github.com/smacpher" title="GitHub"><img
src="assets/github-logo.svg"></a>
</div>
</div>
</div>
</body>