-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
533 lines (498 loc) · 31.4 KB
/
Copy pathindex.html
File metadata and controls
533 lines (498 loc) · 31.4 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
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
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="google-site-verification" content="6ZiaS5z4X0piLKKPXf-syU3lEqvE1CXLjohOx2qtwxk" />
<title>Devon O'Rourke — Staff TPM · Boston MA</title>
<!-- SEO -->
<meta name="description" content="Staff Technical Program Manager, MBA, APM, POPM. 10+ years owning complex technical programs E2E across 5G infrastructure, cloud platforms (GCP/AWS), and hardware/software systems. Open to Staff+ TPM and Associate Director roles in Boston MA and remote.">
<meta name="keywords" content="Staff TPM, Technical Program Manager, Boston, 5G, Telecom, Verizon, Program Management, GCP, AWS, Agile, SAFe, AI, LLM, Python, Cross-functional, E2E, Remote, MBA">
<meta name="author" content="Devon O'Rourke">
<link rel="canonical" href="https://devbotman.github.io/">
<!-- Open Graph -->
<meta property="og:type" content="profile">
<meta property="og:title" content="Devon O'Rourke — Staff TPM, MBA · Boston MA">
<meta property="og:description" content="Staff TPM with 10+ years of E2E program ownership across 5G, cloud, and hardware/software systems. $8.38B program owned. Open to Staff+ and Associate Director roles.">
<meta property="og:url" content="https://devbotman.github.io/">
<meta property="og:site_name" content="Devon O'Rourke · Portfolio">
<meta property="profile:first_name" content="Devon">
<meta property="profile:last_name" content="O'Rourke">
<!-- Twitter card -->
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="Devon O'Rourke — Staff TPM · Boston MA">
<meta name="twitter:description" content="Staff TPM · MBA, APM, POPM · $8.38B program owned E2E · Open to Staff+ roles in Boston & Remote">
<!-- JSON-LD Person schema -->
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Person",
"name": "Devon O'Rourke",
"jobTitle": "Staff Technical Program Manager",
"worksFor": { "@type": "Organization", "name": "Verizon" },
"url": "https://devbotman.github.io/",
"email": "orourke.landry@gmail.com",
"sameAs": [
"https://www.linkedin.com/in/devon-orourke-pat/",
"https://github.com/devbotman"
],
"address": { "@type": "PostalAddress", "addressLocality": "Boston", "addressRegion": "MA", "addressCountry": "US" },
"alumniOf": [
{ "@type": "CollegeOrUniversity", "name": "Strayer University", "award": "MBA" },
{ "@type": "CollegeOrUniversity", "name": "University of Massachusetts Amherst", "award": "BS Computer Systems Engineering" }
],
"knowsAbout": ["Technical Program Management","5G","Cloud Infrastructure","GCP","AWS","Agile","SAFe","Python","AI Automation","LLM Orchestration"]
}
</script>
<style>
:root {
--bg: #0d1117;
--bg2: #161b22;
--bg3: #21262d;
--border: #30363d;
--accent: #58a6ff;
--green: #3fb950;
--purple: #bc8cff;
--amber: #e3b341;
--red: #f85149;
--text: #e6edf3;
--text2: #8b949e;
--text3: #6e7681;
--r: 10px;
--mono: 'SF Mono','Fira Code',monospace;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif; background: var(--bg); color: var(--text); line-height: 1.6; }
/* Nav */
nav {
position: sticky; top: 0; z-index: 100;
background: rgba(13,17,23,0.92); backdrop-filter: blur(12px);
border-bottom: 1px solid var(--border);
display: flex; align-items: center; justify-content: space-between;
padding: 0 40px; height: 56px;
}
.nav-logo { font-weight: 700; font-size: 15px; letter-spacing: -0.3px; }
.nav-logo span { color: var(--accent); }
.nav-links { display: flex; gap: 24px; }
.nav-links a { color: var(--text2); text-decoration: none; font-size: 14px; transition: color .2s; }
.nav-links a:hover { color: var(--text); }
.nav-cta { background: var(--accent); color: #0d1117; font-weight: 600; font-size: 13px; padding: 7px 18px; border-radius: 6px; text-decoration: none; transition: opacity .2s; }
.nav-cta:hover { opacity: .85; }
/* Hero */
.hero { max-width: 860px; margin: 0 auto; padding: 100px 40px 72px; }
.hero-eyebrow { display: flex; align-items: center; gap: 10px; margin-bottom: 24px; }
.dot { width: 8px; height: 8px; border-radius: 50%; background: var(--green); animation: pulse 2s infinite; flex-shrink: 0; }
@keyframes pulse { 0%,100%{opacity:1}50%{opacity:.4} }
.eyebrow-text { font-size: 13px; color: var(--text2); }
h1 { font-size: clamp(38px, 5.5vw, 62px); font-weight: 800; letter-spacing: -2px; line-height: 1.05; margin-bottom: 12px; }
h1 em { font-style: normal; color: var(--accent); }
.hero-creds { font-size: 14px; color: var(--text3); font-family: var(--mono); margin-bottom: 20px; letter-spacing: .02em; }
.hero-sub { font-size: 17px; color: var(--text2); max-width: 520px; margin-bottom: 40px; }
.hero-sub strong { color: var(--text); }
.hero-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 40px; }
.chip { background: var(--bg2); border: 1px solid var(--border); border-radius: 20px; padding: 4px 14px; font-size: 12px; color: var(--text2); font-family: var(--mono); }
.chip.hi { border-color: var(--accent); color: var(--accent); }
.hero-links { display: flex; gap: 12px; flex-wrap: wrap; }
.btn { display: inline-flex; align-items: center; gap: 7px; padding: 10px 22px; border-radius: 8px; font-size: 14px; font-weight: 600; text-decoration: none; transition: opacity .2s, background .2s; }
.btn-p { background: var(--accent); color: #0d1117; }
.btn-p:hover { opacity: .85; }
.btn-s { background: var(--bg2); color: var(--text); border: 1px solid var(--border); }
.btn-s:hover { background: var(--bg3); }
/* Stats bar */
.stats { background: var(--bg2); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); padding: 36px 40px; }
.stats-inner { max-width: 860px; margin: 0 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 24px; }
.stat { text-align: center; }
.stat-n { font-size: 32px; font-weight: 800; letter-spacing: -1px; color: var(--accent); }
.stat-l { font-size: 12px; color: var(--text2); margin-top: 4px; }
/* Projects */
.projects { max-width: 860px; margin: 0 auto; padding: 80px 40px; }
.section-tag { font-size: 11px; font-weight: 600; letter-spacing: 2px; text-transform: uppercase; color: var(--green); margin-bottom: 10px; }
h2 { font-size: 28px; font-weight: 800; letter-spacing: -.6px; margin-bottom: 8px; }
.section-sub { font-size: 15px; color: var(--text2); margin-bottom: 48px; }
.project-grid { display: grid; gap: 20px; }
.pcard {
background: var(--bg2); border: 1px solid var(--border); border-radius: var(--r);
display: grid; grid-template-columns: 1fr auto;
padding: 28px 32px; gap: 20px; align-items: start;
text-decoration: none; color: var(--text);
transition: border-color .2s, transform .2s;
}
.pcard:hover { border-color: var(--accent); transform: translateY(-2px); }
.pcard-badge { font-size: 10px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; padding: 3px 10px; border-radius: 20px; white-space: nowrap; align-self: start; }
.badge-live { background: rgba(63,185,80,.15); color: var(--green); border: 1px solid rgba(63,185,80,.3); }
.badge-building { background: rgba(227,179,65,.12); color: var(--amber); border: 1px solid rgba(227,179,65,.3); }
.pcard-icon { font-size: 28px; margin-bottom: 14px; }
.pcard h3 { font-size: 19px; font-weight: 700; margin-bottom: 6px; }
.pcard p { font-size: 14px; color: var(--text2); margin-bottom: 12px; line-height: 1.5; }
.pcard-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.ptag { background: var(--bg3); border-radius: 4px; padding: 2px 8px; font-size: 11px; font-family: var(--mono); color: var(--text3); }
.impact-list { margin: 10px 0 14px 0; padding: 0 0 0 16px; list-style: none; }
.impact-list li { font-size: 13px; color: var(--text2); margin-bottom: 5px; line-height: 1.5; padding-left: 4px; position: relative; }
.impact-list li::before { content: '→'; color: var(--accent); font-size: 11px; position: absolute; left: -14px; top: 2px; }
.impact-list strong { color: var(--text); }
/* Skills */
.skills-section { background: var(--bg2); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); padding: 72px 40px; }
.skills-inner { max-width: 860px; margin: 0 auto; }
.skills-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 28px; margin-top: 40px; }
.skill-group-title { font-size: 11px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--accent); margin-bottom: 12px; }
.skill-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.skill-tag { background: var(--bg3); border: 1px solid var(--border); border-radius: 6px; padding: 4px 10px; font-size: 12px; color: var(--text2); }
.skill-tag.core { border-color: rgba(88,166,255,0.3); color: var(--text); }
/* Resume */
.resume-section { max-width: 860px; margin: 0 auto; padding: 80px 40px; }
.resume-exp { display: flex; flex-direction: column; gap: 40px; margin-top: 40px; }
.exp-entry { border-left: 2px solid var(--border); padding-left: 24px; position: relative; }
.exp-entry::before { content:''; position:absolute; left:-5px; top:7px; width:8px; height:8px; background:var(--accent); border-radius:50%; }
.exp-meta { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 6px; margin-bottom: 2px; }
.exp-title { font-size: 16px; font-weight: 700; color: var(--text); }
.exp-dates { font-size: 12px; color: var(--text3); font-family: var(--mono); white-space: nowrap; }
.exp-company { font-size: 13px; color: var(--accent); font-weight: 600; margin-bottom: 14px; }
/* KEY FIX: normal block layout, not flex — prevents bold text breaking mid-line */
.exp-bullets { list-style: none; padding: 0 0 0 16px; margin: 0; }
.exp-bullets li { font-size: 14px; color: var(--text2); margin-bottom: 8px; line-height: 1.6; position: relative; padding-left: 4px; }
.exp-bullets li::before { content: '·'; color: var(--accent); font-size: 18px; line-height: 1.2; position: absolute; left: -14px; top: 0; }
.exp-bullets strong { color: var(--text); font-weight: 600; }
.exp-bullets .bullet-label { color: var(--text); font-weight: 600; }
/* Education cards */
.edu-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px,1fr)); gap: 14px; margin-top: 32px; }
.edu-card { background: var(--bg2); border: 1px solid var(--border); border-radius: 8px; padding: 16px 20px; }
.edu-degree { font-size: 14px; font-weight: 700; color: var(--text); margin-bottom: 2px; }
.edu-school { font-size: 13px; color: var(--accent); margin-bottom: 2px; }
.edu-dates { font-size: 11px; color: var(--text3); font-family: var(--mono); }
.cert-tag { display: inline-block; background: rgba(188,140,255,.1); border: 1px solid rgba(188,140,255,.3); color: var(--purple); border-radius: 20px; padding: 3px 12px; font-size: 12px; font-weight: 600; margin: 4px 4px 0 0; }
/* About */
.about { background: var(--bg2); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.about-inner { max-width: 860px; margin: 0 auto; padding: 80px 40px; display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: start; }
.about h2 { margin-bottom: 16px; }
.about p { font-size: 15px; color: var(--text2); margin-bottom: 14px; }
.about p strong { color: var(--text); }
.about-links { display: flex; flex-direction: column; gap: 10px; }
.about-link { display: flex; align-items: center; gap: 12px; background: var(--bg3); border: 1px solid var(--border); border-radius: 8px; padding: 12px 16px; text-decoration: none; color: var(--text); transition: border-color .2s; }
.about-link:hover { border-color: var(--accent); }
.about-link-icon { font-size: 18px; }
.about-link-text { font-size: 13px; font-weight: 600; }
.about-link-sub { font-size: 11px; color: var(--text3); }
/* Footer */
footer { text-align: center; padding: 36px 40px; font-size: 13px; color: var(--text3); border-top: 1px solid var(--border); }
footer a { color: var(--text2); text-decoration: none; }
footer a:hover { color: var(--text); }
.fade-in { opacity: 0; transform: translateY(16px); transition: opacity .5s, transform .5s; }
.fade-in.visible { opacity: 1; transform: none; }
@media(max-width:640px) {
nav { padding: 0 20px; }
.nav-links { gap: 14px; }
.hero { padding: 60px 20px 48px; }
.stats { padding: 28px 20px; }
.projects, .resume-section { padding: 60px 20px; }
.about-inner { padding: 60px 20px; grid-template-columns: 1fr; }
.skills-section { padding: 60px 20px; }
.pcard { grid-template-columns: 1fr; }
}
</style>
</head>
<body>
<nav>
<div class="nav-logo">dev<span>botman</span></div>
<div class="nav-links">
<a href="#projects">Projects</a>
<a href="#skills">Skills</a>
<a href="#resume">Resume</a>
<a href="#about">About</a>
</div>
<a href="https://www.linkedin.com/in/devon-orourke-pat/" target="_blank" class="nav-cta">LinkedIn →</a>
</nav>
<!-- Hero -->
<div class="hero">
<div class="hero-eyebrow">
<div class="dot"></div>
<span class="eyebrow-text">Open to Staff+ TPM & Associate Director roles · Boston MA & Remote</span>
</div>
<h1>Devon O'Rourke<br><em>TPM & Builder</em></h1>
<p class="hero-creds">MBA · APM · POPM · BS Computer Systems Engineering</p>
<p class="hero-sub">
10+ years owning complex technical programs end-to-end across <strong>5G infrastructure</strong>, <strong>cloud platforms (GCP/AWS)</strong>, and <strong>hardware/software systems</strong>. I thrive in ambiguous early-stage environments and build AI tools that make the work sharper.
</p>
<div class="hero-chips">
<span class="chip hi">5G / Telecom</span>
<span class="chip hi">GCP · AWS</span>
<span class="chip hi">E2E Program Delivery</span>
<span class="chip hi">AI-Augmented Workflows</span>
<span class="chip">Python · SQL · BigQuery</span>
<span class="chip">Playwright · Flask</span>
<span class="chip">LLM / Ollama</span>
<span class="chip">Agile / SAFe</span>
<span class="chip">JIRA · Rally</span>
</div>
<div class="hero-links">
<a href="https://www.linkedin.com/in/devon-orourke-pat/" target="_blank" class="btn btn-p">View LinkedIn →</a>
<a href="/Devon_ORourke_Staff_TPM_2026.pdf" download class="btn btn-s">
<svg width="14" height="14" viewBox="0 0 16 16" fill="currentColor"><path d="M2.75 14A1.75 1.75 0 0 1 1 12.25v-2.5a.75.75 0 0 1 1.5 0v2.5c0 .138.112.25.25.25h10.5a.25.25 0 0 0 .25-.25v-2.5a.75.75 0 0 1 1.5 0v2.5A1.75 1.75 0 0 1 13.25 14Zm-1-5.5a.75.75 0 0 1 1.06-1.06L7.25 11.69V2.75a.75.75 0 0 1 1.5 0v8.94l4.44-4.25a.75.75 0 1 1 1.06 1.06l-5.75 5.5a.747.747 0 0 1-1.06 0Z"/></svg>
Download Resume
</a>
<a href="https://github.com/devbotman" target="_blank" class="btn btn-s">
<svg width="16" height="16" viewBox="0 0 16 16" fill="currentColor"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"/></svg>
GitHub
</a>
<a href="mailto:orourke.landry@gmail.com" class="btn btn-s">orourke.landry@gmail.com</a>
</div>
</div>
<!-- Stats -->
<div class="stats">
<div class="stats-inner">
<div class="stat fade-in"><div class="stat-n">$8.38B</div><div class="stat-l">Program budget owned E2E</div></div>
<div class="stat fade-in"><div class="stat-n">90K hrs</div><div class="stat-l">Engineering time recovered</div></div>
<div class="stat fade-in"><div class="stat-n">40%</div><div class="stat-l">Deployment time reduction</div></div>
<div class="stat fade-in"><div class="stat-n">$200M</div><div class="stat-l">Vertical opportunity identified</div></div>
<div class="stat fade-in"><div class="stat-n">10+ yrs</div><div class="stat-l">Technical program delivery</div></div>
</div>
</div>
<!-- Projects -->
<div class="projects" id="projects">
<div class="section-tag fade-in">Projects</div>
<h2 class="fade-in">Things I've built</h2>
<p class="section-sub fade-in">Open-source tools at the intersection of automation, data, and program management.</p>
<div class="project-grid">
<a href="https://github.com/devbotman/tpm-command-center" target="_blank" class="pcard fade-in">
<div>
<div class="pcard-icon">🎯</div>
<h3>TPM Command Center</h3>
<p>Self-hosted job search automation platform built to solve my own search problem at scale.</p>
<ul class="impact-list">
<li><strong>250+ ATS integrations</strong> · Greenhouse, Workday, Ashby, Lever, LinkedIn scraped daily with Playwright</li>
<li><strong>Local LLM scoring</strong> via Ollama ranks every job against my profile without sending data to the cloud</li>
<li><strong>Real-time Flask dashboard</strong> with SSE-powered live updates, salary filters, and deduplication</li>
</ul>
<div class="pcard-tags">
<span class="ptag">Python</span>
<span class="ptag">Playwright</span>
<span class="ptag">Flask + SSE</span>
<span class="ptag">Ollama</span>
<span class="ptag">SQLite</span>
<span class="ptag">CrewAI</span>
</div>
</div>
<span class="pcard-badge badge-live">Live</span>
</a>
<div class="pcard fade-in" style="cursor:default;">
<div>
<div class="pcard-icon">🏠</div>
<h3>MA Housing Market Tracker</h3>
<p>Public data pipeline + live analytics dashboard for the Massachusetts housing market.</p>
<ul class="impact-list">
<li><strong>Interactive heat map</strong> · county and town layers, 6 switchable metrics (price, inventory, listings, rent)</li>
<li><strong>4 live data sources</strong> · FRED mortgage rates, Zillow ZHVI + extended datasets, MA DOR tax rates</li>
<li><strong>351 MA towns</strong> tracked for property tax trends with YoY change, sortable county tables</li>
</ul>
<div class="pcard-tags">
<span class="ptag">Python</span>
<span class="ptag">FRED API</span>
<span class="ptag">Zillow Data</span>
<span class="ptag">Leaflet.js</span>
<span class="ptag">Chart.js</span>
<span class="ptag">SQLite</span>
</div>
<div style="display:flex;gap:10px;margin-top:14px;">
<a href="https://devbotman.github.io/ma-housing-tracker/" target="_blank" style="background:#58a6ff;color:#000;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:700;text-decoration:none;">View Dashboard</a>
<a href="https://github.com/devbotman/ma-housing-tracker" target="_blank" style="background:transparent;color:#58a6ff;border:1px solid #58a6ff;border-radius:6px;padding:6px 14px;font-size:12px;font-weight:700;text-decoration:none;">GitHub Repo</a>
</div>
</div>
<span class="pcard-badge badge-live">Live</span>
</div>
</div>
</div>
<!-- Skills -->
<div class="skills-section" id="skills">
<div class="skills-inner">
<div class="section-tag fade-in">Competencies</div>
<h2 class="fade-in">Skills & Tools</h2>
<div class="skills-grid">
<div class="skill-group fade-in">
<div class="skill-group-title">AI & Data</div>
<div class="skill-tags">
<span class="skill-tag core">LLM Prompt Engineering</span>
<span class="skill-tag core">Ollama / Local LLMs</span>
<span class="skill-tag core">AI Agent Pipelines</span>
<span class="skill-tag core">Python</span>
<span class="skill-tag core">SQL · BigQuery</span>
<span class="skill-tag">Claude · ChatGPT · Gemini</span>
<span class="skill-tag">Multi-Platform Data Integration</span>
<span class="skill-tag">Tableau</span>
<span class="skill-tag">Data Visualization</span>
</div>
</div>
<div class="skill-group fade-in">
<div class="skill-group-title">Program Management</div>
<div class="skill-tags">
<span class="skill-tag core">E2E Program Delivery</span>
<span class="skill-tag core">Roadmapping · OKRs</span>
<span class="skill-tag core">Stakeholder Alignment</span>
<span class="skill-tag core">Executive Reporting</span>
<span class="skill-tag core">Cross-functional Leadership</span>
<span class="skill-tag">Risk Management</span>
<span class="skill-tag">Influence Without Authority</span>
<span class="skill-tag">Hardware/Software Lifecycle</span>
<span class="skill-tag">Vendor Management</span>
</div>
</div>
<div class="skill-group fade-in">
<div class="skill-group-title">Cloud & Infrastructure</div>
<div class="skill-tags">
<span class="skill-tag core">GCP</span>
<span class="skill-tag core">AWS</span>
<span class="skill-tag core">5G NR / Telecom</span>
<span class="skill-tag">CI/CD Pipelines</span>
<span class="skill-tag">API Integration</span>
<span class="skill-tag">Network Architecture</span>
<span class="skill-tag">Splunk</span>
<span class="skill-tag">Flask · Playwright</span>
<span class="skill-tag">SQLite</span>
</div>
</div>
<div class="skill-group fade-in">
<div class="skill-group-title">Methodologies & Tools</div>
<div class="skill-tags">
<span class="skill-tag core">Agile · SAFe</span>
<span class="skill-tag core">JIRA · Rally</span>
<span class="skill-tag">Atlassian Suite</span>
<span class="skill-tag">Scrum · Kanban</span>
<span class="skill-tag">PI Planning</span>
<span class="skill-tag">Dependency Management</span>
<span class="skill-tag">Capacity Planning</span>
<span class="skill-tag">Strategic Planning</span>
<span class="skill-tag">Budget Ownership</span>
</div>
</div>
</div>
</div>
</div>
<!-- Resume -->
<div class="resume-section" id="resume">
<div class="section-tag fade-in">Experience</div>
<h2 class="fade-in">Resume</h2>
<p class="section-sub fade-in">10+ years of end-to-end program ownership across 5G infrastructure, cloud, and hardware/software systems.</p>
<div class="resume-exp">
<!-- Verizon Staff TPM -->
<div class="exp-entry fade-in">
<div class="exp-meta">
<span class="exp-title">Staff Technical Program Manager</span>
<span class="exp-dates">04/2020 – Present</span>
</div>
<div class="exp-company">Verizon · Boston, MA</div>
<ul class="exp-bullets">
<li><span class="bullet-label">Data Platform & AI Discovery:</span> Identified a critical silent network failure affecting 40% of devices by integrating GCP, Splunk, and LLM-based analysis into a unified diagnostic view. Led remediation restoring device availability by <strong>90%</strong> on affected units. Developed installer retraining program based on root-cause findings, eliminating recurring deployment failures.</li>
<li><span class="bullet-label">Portfolio & Strategic Leadership:</span> Owned end-to-end leadership of an <strong>$8.38B program</strong> that launched a market-disrupting 5G broadband solution. Identified and pitched a <strong>$200M vertical product opportunity</strong>, leading a pilot program to validate revenue potential.</li>
<li><span class="bullet-label">Process Optimization & Velocity:</span> Accelerated time-to-market by removing <strong>90,000 engineering hours</strong> through process re-engineering and standardization. Established program review and prioritization cadence resulting in measurable efficiency gains and faster revenue generation.</li>
<li><span class="bullet-label">Cross-Functional Execution:</span> Led complex cross-functional programs managing scope, vetting new requests, and driving technical consensus to hit cost, schedule, and feature targets. Mitigated dependencies across hardware and software teams, <strong>accelerating product launch by 3 weeks</strong>.</li>
<li><span class="bullet-label">Internal Tooling & Automation:</span> Built a commissioning file generator on GCP (BigQuery/SQL) cutting deployment time by 30 min/node (<strong>40% reduction</strong>). Developed API integration eliminating manual swivel-chair processes, saving 10+ actions/incident. Reduced redundant GCP compute costs by <strong>15%</strong> through workflow standardization.</li>
<li><span class="bullet-label">AI-Augmented Program Intelligence:</span> Architected and built an agentic TPM intelligence platform using Python, local LLMs (Ollama), MCP servers for tool-connected data gathering and API access, and DAG-orchestrated pipelines for multi-source data aggregation, enabling natural language analysis and automated decision support across job market, program, and operational data, <strong>returning 5% of available bandwidth</strong> for critical work.</li>
<li><span class="bullet-label">Executive Communication:</span> Owned executive-level reporting on program status, risks, and solutions, ensuring alignment from engineering teams to senior leadership across a matrixed $8.38B program.</li>
</ul>
</div>
<!-- Network Operations Manager -->
<div class="exp-entry fade-in">
<div class="exp-meta">
<span class="exp-title">Network Operations Manager</span>
<span class="exp-dates">06/2019 – 04/2020</span>
</div>
<div class="exp-company">Verizon · Boston, MA</div>
<ul class="exp-bullets">
<li>Directed and developed <strong>8 Network Engineers</strong> through trust-based leadership, regular coaching, ad-hoc discussions, and formal end-of-year performance reviews.</li>
<li>Activated <strong>5G NR at 2 major venues</strong> (Gillette Stadium, Xfinity Center), improving customer experience and unlocking additional revenue opportunities.</li>
</ul>
</div>
<!-- LDP -->
<div class="exp-entry fade-in">
<div class="exp-meta">
<span class="exp-title">Verizon Leadership Development Program</span>
<span class="exp-dates">06/2016 – 06/2019</span>
</div>
<div class="exp-company">Verizon · Boston, MA</div>
<ul class="exp-bullets">
<li>Recognized as an emerging leader; developed skills across RF Design, Real Estate Management, and Fiber Operations.</li>
<li>Identified <strong>$400,000 in permit refund credits</strong> owed by the City of Boston to Verizon through data-driven analysis.</li>
</ul>
</div>
</div>
<!-- Education & Certs -->
<div style="margin-top:52px;padding-top:36px;border-top:1px solid var(--border);" class="fade-in">
<div class="section-tag" style="margin-bottom:20px;">Education & Certifications</div>
<div class="edu-grid">
<div class="edu-card">
<div class="edu-degree">Master of Business Administration</div>
<div class="edu-school">Strayer University</div>
<div class="edu-dates">07/2016 – 01/2019</div>
</div>
<div class="edu-card">
<div class="edu-degree">BS Computer Systems Engineering</div>
<div class="edu-school">University of Massachusetts Amherst</div>
<div class="edu-dates">06/2012 – 05/2016</div>
</div>
<div class="edu-card">
<div class="edu-degree">Certifications</div>
<div style="margin-top:8px;">
<span class="cert-tag">APM</span>
<span class="cert-tag">POPM</span>
<span class="cert-tag">SAFe</span>
</div>
</div>
</div>
</div>
</div>
<!-- About -->
<div class="about" id="about">
<div class="about-inner">
<div>
<div class="section-tag fade-in">About</div>
<h2 class="fade-in">Background</h2>
<p class="fade-in">I'm a <strong>Staff Technical Program Manager</strong> (MBA, APM, POPM) based in the Boston MA area with 10+ years of end-to-end program ownership across 5G infrastructure, cloud platforms, and hardware/software systems. I've owned an <strong>$8.38B broadband program</strong> from concept through launch and thrive in the ambiguous early stages where the path forward has to be built, not followed.</p>
<p class="fade-in">I lead through influence, not authority. My work spans matrixed engineering organizations where getting things done means building trust, surfacing the right signal, and making complex tradeoffs visible to leadership. I leverage AI and automation (LLMs, agent pipelines, data integrations) to multiply my capacity and bring that same mindset to every program I run.</p>
<p class="fade-in">UMass Amherst CS Engineering grad. Outside of work I build tools. The projects on this page grew out of real problems I wanted solved.</p>
</div>
<div class="fade-in">
<div class="about-links">
<a href="https://www.linkedin.com/in/devon-orourke-pat/" target="_blank" class="about-link">
<span class="about-link-icon">💼</span>
<div>
<div class="about-link-text">LinkedIn</div>
<div class="about-link-sub">linkedin.com/in/devon-orourke-pat</div>
</div>
</a>
<a href="https://github.com/devbotman/tpm-command-center" target="_blank" class="about-link">
<span class="about-link-icon">🎯</span>
<div>
<div class="about-link-text">TPM Command Center</div>
<div class="about-link-sub">Job search automation · 250+ ATS scrapers</div>
</div>
</a>
<a href="https://devbotman.github.io/ma-housing-tracker/" target="_blank" class="about-link">
<span class="about-link-icon">🏠</span>
<div>
<div class="about-link-text">MA Housing Tracker</div>
<div class="about-link-sub">Live dashboard · Heat map · Zillow + FRED</div>
</div>
</a>
<a href="mailto:orourke.landry@gmail.com" class="about-link">
<span class="about-link-icon">✉️</span>
<div>
<div class="about-link-text">Get in touch</div>
<div class="about-link-sub">orourke.landry@gmail.com</div>
</div>
</a>
</div>
</div>
</div>
</div>
<footer>
Devon O'Rourke · Staff TPM, MBA, APM, POPM · Boston, MA ·
<a href="https://www.linkedin.com/in/devon-orourke-pat/">LinkedIn</a> ·
<a href="https://github.com/devbotman">GitHub</a> ·
<a href="mailto:orourke.landry@gmail.com">orourke.landry@gmail.com</a>
</footer>
<script>
const obs = new IntersectionObserver(es => es.forEach(e => {
if (e.isIntersecting) e.target.classList.add('visible');
}), { threshold: 0.06 });
document.querySelectorAll('.fade-in').forEach(el => obs.observe(el));
</script>
</body>
</html>