-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsoftware.html
More file actions
200 lines (172 loc) · 9.84 KB
/
software.html
File metadata and controls
200 lines (172 loc) · 9.84 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
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="assets/css/main.css" />
<title>Software & Case Studies | Reflective</title>
<meta
name="description"
content="Case studies and software from Reflective, including Ranked Placement, Test Reflector, and enterprise data pipeline projects built with Elixir and Rust."
/>
<meta
name="og:description"
property="og:description"
content="Case studies and software from Reflective, including Ranked Placement, Test Reflector, and enterprise data pipeline projects built with Elixir and Rust."
/>
<meta name="og:image" property="og:image" content="https://www.reflective.dev/images/logo.png" />
<meta name="og:title" property="og:title" content="Software & Case Studies | Reflective" />
<meta name="og:url" property="og:url" content="https://www.reflective.dev/software" />
</head>
<body>
<nav>
<a href="/" class="logo"><img src="images/logo.svg" width="32" height="28" alt="Reflective logo" /> Reflective</a>
<div class="links">
<span>software</span>
<a href="/about">about</a>
<a href="/consulting">consulting</a>
</div>
</nav>
<main>
<header id="header">
<h1>Our Philosophy</h1>
</header>
<section class="callout">
<div class="cols callout-inner">
<div>
<h3>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-buildings"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M4 21v-15c0 -1 1 -2 2 -2h5c1 0 2 1 2 2v15" /><path d="M16 8h2c1 0 2 1 2 2v11" /><path d="M3 21h18" /><path d="M10 12v0" /><path d="M10 16v0" /><path d="M10 8v0" /><path d="M7 12v0" /><path d="M7 16v0" /><path d="M7 8v0" /><path d="M17 12v0" /><path d="M17 16v0" /></svg>
Build
</h3>
<p>
We build well-tested software focused on improving human experience, solving real
problems faced by your customers and your team.
</p>
</div>
<div>
<h3>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-ship"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M2 20a2.4 2.4 0 0 0 2 1a2.4 2.4 0 0 0 2 -1a2.4 2.4 0 0 1 2 -1a2.4 2.4 0 0 1 2 1a2.4 2.4 0 0 0 2 1a2.4 2.4 0 0 0 2 -1a2.4 2.4 0 0 1 2 -1a2.4 2.4 0 0 1 2 1a2.4 2.4 0 0 0 2 1a2.4 2.4 0 0 0 2 -1" /><path d="M4 18l-1 -5h18l-2 4" /><path d="M5 13v-6h8l4 6" /><path d="M7 7v-4h-1" /></svg>
Ship
</h3>
<p>
Software is hypothetical until it’s exercised in production. Our focus
is to get our software into production as rapidly as possible, with as few risks as
possible.
</p>
</div>
<div>
<h3>
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="icon icon-tabler icons-tabler-outline icon-tabler-arrow-iteration"><path stroke="none" d="M0 0h24v24H0z" fill="none"/><path d="M8.5 16a5.5 5.5 0 1 0 -5.5 -5.5v.5" /><path d="M3 16h18" /><path d="M18 13l3 3l-3 3" /></svg>
Iterate
</h3>
<p>
Edge cases emerge as soon as software is out of your hands and into your customers’. By
shortening the cycle between building and shipping, we learn and adapt more quickly.
</p>
</div>
</div>
</section>
<section>
<h2>Case Studies</h2>
</section>
<section>
<h3>Ranked Placement</h3>
<p>
We launched Ranked Placement at the beginning of 2025. It is a web-based platform that places students
and other prospective interns at internship and practica sites by letting students and sites rank each other
and then making the best match, using the same matching algorithm as medical student residency matching.
</p>
<p>
For our first customer, we successfully placed hundreds of interns at just over a hundred internship sites,
and we are ready to host your matching process. Read more at <a href="https://rankedplacement.com">rankedplacement.com</a>,
or email us at <a href="mailto:contact@rankedplacement.com">contact@rankedplacement.com</a>.
</p>
</section>
<section>
<h3>Test Reflector</h3>
<p>
With dozens of open-source repositories and a host of personal and private projects that we maintain, we found
that we needed a better tool for tracking GitHub Actions—especially on the days where we update dependencies
across 40+ repos. Thus <a href="https://www.testreflector.app">Test Reflector</a> was born.
</p>
<p>
Test Reflector provides a concise overview of CI workflow statuses and recent results across repositories,
eliminating the need to constantly switch tabs or watch your email for failure notices. The application targets
iOS as well as macOS. We wrote the core of the application in Rust, for its type safety, stability,
headless testability, and cross-platform portability, bridged with Swift for the UI.
</p>
</section>
<section>
<h3>Replatforming a mission-critical legacy codebase</h3>
<p>
A Fortune 500 company relied on a legacy business-critical application for worldwide budgeting. This decades-old
application was difficult to understand, to modify, and to maintain. Operations had been outsourced, and no
team within the company had the expertise to continue development on this application.
</p>
<p>
We joined an existing team of developers who had just begun replatforming the application to Elixir and Phoenix.
In addition to feature development, we introduced software design patterns that increased the team’s ability to
ship code quickly, and we helped bring the team’s less-experienced Elixir developers up to speed.
</p>
</section>
<section>
<h3>Building a carbon emissions data pipeline</h3>
<p>
A large global logistics company wanted to operationalize the tracking of their greenhouse gas emissions.
Their data team could manually create emissions reports, taking days or weeks to produce; the company
wanted to provide on-demand real-time emissions data to their customers.
</p>
<p>
We joined a team of developers who had just begun building the new application. We built the initial data
pipeline that pulled data from a large data lake as well as from external APIs, performed real-time emissions
calculations, and created streaming exports capable of generating 100M row Excel sheets. We developed PostgreSQL
queries capable of summarizing and calculating emissions over 100s of millions of records in real-time using
optimized common table expressions (CTEs). We also trained developers new to Elixir in testing and coding paradigms.
</p>
</section>
<section>
<h3>Processing a multi-year healthcare data backlog</h3>
<p>
A state department of health had a multi-year backlog of COVID-19 health care data that epidemiologists needed
access to in order to perform comorbidity analysis. Processing the data required interacting with 6 different
health information exchanges (HIE), each of which had different resource thresholds and concurrencty limits. While
documenting that they supported the same HL7v3 API format, each HIE’s API demonstrated inconsistences and unique
response behaviors. New daily data dumps continually increased the size of the backlog, as well as changed the priority
of existing records depending on certain markers.
</p>
<p>
We rapidly developed a data pipeline application with built-in real-time dashboards for monitoring and reconfiguring
concurrency. We interacted with HIE personnel to investigate their APIs, develop workarounds for unintended API
behaviors, and help them to identify and apply fixes where possible. The deployed application used resilient
architectural patterns that allowed for real-time reprioritization, idempotency, error recovery, and observability.
</p>
</section>
<section>
<h3>Open Source</h3>
<p>
We have also created and maintain numerous
<a href="/open-source">open source libraries in Elixir and Rust</a>.
</p>
</section>
<section>
<h2>Get In Touch</h2>
<p>Email us at <a href="mailto:contact@reflective.dev">contact@reflective.dev</a>.</p>
</section>
</main>
<footer id="footer">
<ul class="icons">
<li>
<a href="https://github.com/reflective-dev" class="icon fa-github"><span class="label">GitHub</span></a>
</li>
<li>
<a href="https://www.linkedin.com/company/reflective-software" class="icon fa-linkedin"
><span class="label">LinkedIn</span></a
>
</li>
</ul>
<ul class="copyright">
<li>© 2025 Reflective Software, LLC</li>
</ul>
</footer>
<script src="assets/js/main.js"></script>
</body>
</html>