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
7 changes: 6 additions & 1 deletion src/components/Menu.astro
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
import { faHouse, faUser, faBlog, faEnvelope, faCode } from '@fortawesome/free-solid-svg-icons'
import { faHouse, faUser, faBlog, faEnvelope, faCode, faFileLines } from '@fortawesome/free-solid-svg-icons'
---
<ul class="flex flex-col gap-4">
<li>
Expand All @@ -13,4 +13,9 @@ import { faHouse, faUser, faBlog, faEnvelope, faCode } from '@fortawesome/free-s
<FontAwesomeIcon icon={faCode} /> Projects
</a>
</li>
<li>
<a href="/Resume" class="flex flex-row items-center gap-4">
<FontAwesomeIcon icon={faFileLines} /> Resume
</a>
</li>
</ul>
3 changes: 3 additions & 0 deletions src/layouts/Blog.astro
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,9 @@ const props = Astro.props;
<div class="flex flex-col w-3/5 pt-8 mb-50 max-w-350" >
<slot name="blog" />
</div>
<div class="flex justify-center w-full bg-destructive-foreground text-lg p-5">
<slot name="footer"/>
</div>
</div>
</div>
</body>
Expand Down
3 changes: 3 additions & 0 deletions src/layouts/Home.astro
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@ const props = Astro.props;
<div class="flex flex-col w-3/5 pt-8 prose prose-lg prose-neutral dark:prose-invert max-w-350 gap-8 mb-50">
<slot name="blog-posts" />
</div>
<div class="flex justify-center w-full bg-destructive-foreground text-lg p-5">
<slot name="footer"/>
</div>
</div>
</div>
</body>
Expand Down
3 changes: 3 additions & 0 deletions src/layouts/Project.astro
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@ const props = Astro.props;
<div class="flex flex-col w-3/5 pt-8 mb-50 max-w-350" >
<slot name="project" />
</div>
<div class="flex justify-center w-full bg-destructive-foreground text-lg p-5">
<slot name="footer"/>
</div>
</div>
</div>
</body>
Expand Down
3 changes: 3 additions & 0 deletions src/layouts/Projects.astro
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,9 @@ const props = Astro.props;
<div class="mx-auto grid grid-cols-1 lg:grid-cols-2 gap-8 w-full max-w-11/12 pt-8 mb-40">
<slot name="project-posts" />
</div>
<div class="flex justify-center w-full bg-destructive-foreground text-lg p-5">
<slot name="footer"/>
</div>
</div>
</div>
</body>
Expand Down
47 changes: 47 additions & 0 deletions src/layouts/Resume.astro
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
import '../styles/global.css';

import SideNav from '../components/SideNav.astro';

const props = Astro.props;
---

<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<link rel="icon" type="image/svg+xml" href="/logoIcon.png" />
<link rel="alternate" type="application/rss+xml" title="Yorisoft.dev RSS Feed" href={new URL("rss.xml", Astro.site)} />
<link
rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css"
integrity="sha512-..."
crossorigin="anonymous"
referrerpolicy="no-referrer"
/>
<meta name="generator" content={Astro.generator} />
<script is:inline>
// Runs before page renders to prevent flash
document.documentElement.classList.add("dark")
</script>
<title>{props.title}</title>
</head>
<body>
<div class="flex h-screen bg-sidebar">
<!-- <slot name="side-panel"/> -->
<!-- <slot name="main"/> -->
<SideNav />
<div id="main-panel" class="flex flex-col items-center w-full h-full overflow-auto max-w-none prose prose-lg prose-neutral dark:prose-invert bg-background">
<div class="flex justify-center w-full text-5xl font-semibold gap-2 bg-destructive-foreground">
<slot name="title" />
</div>
<div class="flex flex-col w-3/5 pt-8 mb-50 max-w-350" >
<slot name="resume" />
</div>
<div class="flex justify-center w-full bg-destructive-foreground text-lg p-5">
<slot name="footer"/>
</div>
</div>
</div>
</body>
</html>
87 changes: 87 additions & 0 deletions src/markdown/resume.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
---
title: Resume
---


<div class="text-center">

# Yelsin Tomas Sepulveda

### **Software Engineer | Cloud DevOps**

</div>

<i class="fa-solid fa-envelope"></i>
<a href="mailto:YelsinSepulveda@gmail.com">YelsinSepulveda@gmail.com</a> ·
<i class="fa-brands fa-github"></i> GitHub ·
<i class="fa-brands fa-gitlab"></i> GitLab ·
<i class="fa-brands fa-linkedin"></i>
<a href="https://linkedin.com/in/yelsin-sepulveda-lara">LinkedIn</a>

## Experience

### KDE — GSoC’25 Contributor
**June 2025 – Present · Remote**

- Submitted proposal and was accepted to develop gaming controller support in Plasma Desktop through **KWin**, addressing a long-standing system suspension issue and adding basic system navigation.
- Implemented the solution using **C++**, **Qt Framework**, **CMake**, **KDE Frameworks**, and the **Linux Kernel Input Subsystem API**.
- Collaborate closely with KDE/KWin maintainers and mentors throughout development lifecycles, participate in code reviews, technical discussions on Matrix channels, and publish public blog posts.

---

### Amazon Web Services — SDE DevOps, Innovation Engineering
**Sep 2023 – June 2024 · Remote**

- Developed and refactored multi-stage CI/CD pipelines, reducing pipeline execution time by **40%** (~30 min → ~18 min) and improving infrastructure maintainability using **CloudFormation**, **CDK**, **CodePipeline**, **TypeScript**, **ECS**, **EKS**, and **Docker**.
- Built **15+ reusable CDK L3 constructs**, encapsulating resources such as VPN, S3, EC2, ECS, RDS, and networking for *Marshall* (internal web platform), significantly reducing configuration complexity and drift.

---

### Amazon Web Services — Solutions Architect (Intern → Associate)
**Jan 2021 – Sep 2023 · Arlington, VA**

- Created User Acceptance Test documentation, automated tests, and reporting for the **AWS Secure Environment Accelerator**, validating expected security controls using **Python**, `unittest`, and **Boto3**.
- Developed deep technical expertise across core AWS services including **EC2**, **Lambda**, **S3**, **RDS**, **VPC**, **CloudFormation**, **IAM**, and **CloudWatch**, following the AWS Well-Architected Framework.
- Architected AWS environments for public sector and enterprise customers, advising on least-privilege IAM, encryption, backups, networking, and the Shared Responsibility Model.
- Supported executive demos and client workshops, translating complex architectures into actionable business insights.

---

### AthenaHealth — NE1 Intern, Platform Services
**June 2020 – May 2021 · Watertown, MA**

- Developed new infrastructure for **Okta authentication resources**, converting imperative JavaScript scripts into a declarative **Terraform**-based system.
- Created a CI/CD pipeline using **Jenkins** and **Docker**, automating code fetch, Puppeteer smoke tests, and deployment to AWS EC2.
- Worked within a Scrum team following Agile workflows, including daily standups, Jira ticketing, bi-weekly sprints, and retrospectives.

---

## Personal Projects

### Open Source Contributor — KDE (2025)
- Contributions to **Angelfish**, **KWin**, and **Plasma Desktop**
*Technologies:* C++, Qt, CMake

### Retrodex Miyoo — Pokédex App (2024)
- Pokédex application for **Onion-OS** on gaming handhelds using the `miyoomini-toolchain`
*Technologies:* C++, SDL, CMake

---

## Skills

- **Languages:** C, C++, Go, Java, Python, TypeScript, JavaScript
- **Cloud & Infrastructure:** AWS (ECS, EKS, Lambda, CDK, CloudFormation), Docker, Kubernetes, Terraform, Grafana, Prometheus
- **Tools:** React, Node.js, Qt, CMake, Jenkins, Git, Linux

---

## Certifications

- AWS Certified Cloud Practitioner — J3W7057DJERE1WSZ
- AWS Certified Solutions Architect – Associate — MMWL2GE2WEBEQH58
- AWS Certified Developer – Associate — MEGK0X01XNREQCWW

---

**Languages:** Native bilingual — English & Spanish
3 changes: 3 additions & 0 deletions src/pages/Projects.astro
Original file line number Diff line number Diff line change
Expand Up @@ -35,4 +35,7 @@ const projects = await getCollection('project');
/>
)
})}
<p slot="footer" class="flex items-center gap-2">
Made wih ❤️ and <img class="w-8" src={`https://go-skill-icons.vercel.app/api/icons?i=astro`} />
</p>
</ProjectsLayout>
22 changes: 22 additions & 0 deletions src/pages/Resume.astro
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
import '../styles/global.css';

// Component Imports
import ResumeLayout from "../layouts/Resume.astro"
import * as resume from "../markdown/resume.md"

import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'
import { faAt } from '@fortawesome/free-solid-svg-icons'
import {faSquareGitlab, faSquareGithub, faSquareLinkedin} from '@fortawesome/free-brands-svg-icons'

// Full Astro Component Syntax:
// https://docs.astro.build/basics/astro-components/
---

<ResumeLayout slot="main" >
<p slot="title">Resume</p>
<div set:html={await resume.compiledContent()} slot="resume"/>
<p slot="footer" class="flex items-center gap-2">
Made wih ❤️ and <img class="w-8" src={`https://go-skill-icons.vercel.app/api/icons?i=astro`} />
</p>
</ResumeLayout>
3 changes: 3 additions & 0 deletions src/pages/blog/[slug].astro
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,7 @@ const title = props.title;
<BlogLayout title= {`Yorisoft.dev - ${post.data.title}`}>
<p slot="blog-title">{post.data.title}</p>
<Content slot="blog" />
<p slot="footer" class="flex items-center gap-2">
Made wih ❤️ and <img class="w-8" src={`https://go-skill-icons.vercel.app/api/icons?i=astro`} />
</p>
</BlogLayout>
3 changes: 3 additions & 0 deletions src/pages/index.astro
Original file line number Diff line number Diff line change
Expand Up @@ -35,4 +35,7 @@ const posts = await getCollection('blog');
/>
)
})}
<p slot="footer" class="flex items-center gap-2">
Made wih ❤️ and <img class="w-8" src={`https://go-skill-icons.vercel.app/api/icons?i=astro`} />
</p>
</HomeLayout>
3 changes: 3 additions & 0 deletions src/pages/project/[slug].astro
Original file line number Diff line number Diff line change
Expand Up @@ -35,4 +35,7 @@ const title = props.title;
<ProjectLayout slot="main" >
<p slot="project-title">{proj.data.title}</p>
<Content slot="project" />
<p slot="footer" class="flex items-center gap-2">
Made wih ❤️ and <img class="w-8" src={`https://go-skill-icons.vercel.app/api/icons?i=astro`} />
</p>
</ProjectLayout>