Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/components/EntryCard.astro
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ const { period, logo, title, url, rows = [], details, sparkline, tags, links, fe
</div>
))
}
<p class="entry-details">{details}</p>
{details.split("\n\n").filter((para) => para.trim()).map((para) => <p class="entry-details">{para}</p>)}
{
sparkline && (
<Sparkline posthogId={sparkline.posthogId} label={sparkline.label} client:visible />
Expand Down
12 changes: 6 additions & 6 deletions src/data/experiences.ts
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,8 @@ export const experiences: readonly Experience[] = [
url: "https://getharley.com/",
location: "London, UK (Remote)",
details:
"Contributing to a telehealth platform that connects patients with expert clinicians, focusing on enhancing user experience, implementing new features and designs.",
tags: ["TypeScript", "React", "Next.js", "AWS"],
"Co-built the AI-driven consultation transcription product now used by ~15 design-partner clinics for around 80% of their consultations.\n\nLed a catalog-variants migration that touched the data model, AI pipeline, and patient-facing UI.\n\nAlso built and maintain the patient recall and follow-up Lambda systems in production.",
Comment thread
Fralleee marked this conversation as resolved.
tags: ["TypeScript", "React", "Next.js", "AWS Amplify", "AWS Lambda", "DynamoDB", "Bedrock", "PostHog"],
},
{
period: "2023 — 2024",
Expand All @@ -36,8 +36,8 @@ export const experiences: readonly Experience[] = [
url: "https://www.nira.com/",
location: "California, US (Remote)",
details:
"Helped companies take control over their documents, enhancing the transparency of both internal and external access to company records.",
tags: ["TypeScript", "React", "Next.js", "tRPC", "GraphQL", "Elasticsearch", "AWS"],
"Architected and solo-built DSA, a lightweight free-tier acquisition product, bootstrapping the monorepo, auth, CI/CD, storage, and UI surface.\n\nAlso replaced manual customer onboarding with a fully automated self-service flow backed by a cloud-document ingest cron worker.",
tags: ["TypeScript", "React", "Next.js", "tRPC", "GraphQL", "Elasticsearch", "MongoDB", "AWS", "PostgreSQL"],
},
{
period: "2022 — 2023",
Expand All @@ -48,8 +48,8 @@ export const experiences: readonly Experience[] = [
url: "https://stackoverflow.com/",
location: "New York, US (Remote)",
details:
"Part of the Awareness team, primarily involved in optimizing ads and metrics to improve click-through rates, automation, and impressions.",
tags: ["TypeScript", "Webpack", "C#", "SQL", "Redis", "Elasticsearch", "Google Ads"],
"Led the ed-tech course ad-serving product (Udemy and Pluralsight affiliate partnerships) end-to-end, covering catalog ingest, validation, ranking, and CTR-driven experimentation on Stack Overflow question pages.\n\nAlso built a .NET catalog validation pipeline that verified course titles, categories, and pricing against live partner pages before serving them as ads.",
tags: ["TypeScript", "Webpack", "C#", ".NET", "SQL", "Redis", "Elasticsearch", "Google Ads"],
},
{
period: "2022 — 2022",
Expand Down
11 changes: 7 additions & 4 deletions src/sections/About.astro
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,10 @@ import { available } from "../data/availability";
<Section id="about" label="01 — About" title="About">
<div class="prose-block text-fg-1">
<p>
I’m a frontend engineer from Sweden who’s spent the last decade moving between product teams
in fintech, e-commerce, developer tools and now healthcare. I care about type, motion and the small details that turn a screen into a place.
I’m a software engineer from Sweden with a decade across telehealth, security, ad tech,
e-commerce, fintech, and online gaming. Frontend at the core, increasingly fullstack, and
lately shipping AI-driven product features. I care about type, motion and the small details
that turn a screen into a place.
</p>
<p>
Along the way I’ve worked with a <a
Expand All @@ -24,8 +26,9 @@ import { available } from "../data/availability";
>.
</p>
<p>
I work mostly in TypeScript, React and Next.js, but I’m happiest when the boundary between
design and engineering gets fuzzy.
These days I’m at GetHarley, working on AI features for clinical consultations like
transcription and treatment-plan generation. I’m happiest when the boundary between design
and engineering gets fuzzy.
</p>
{
available ? (
Expand Down