Source Code

src/pages/resume.rs

use leptos::*;
use leptos_meta::{Meta, Title};

use super::seo::Seo;

const RESUME_PDF: &str = "/resume.pdf";
const RESUME_TEX: &str = include_str!("../../public/resume.tex");

#[component]
pub fn Resume() -> impl IntoView {
    view! {
        <Title text="Resume – Peter Pinto"/>
        <Meta name="description" content="Resume of Peter Pinto – Senior Software Engineer with experience in distributed systems, geospatial intelligence, DevOps, and AI/ML."/>
        <Seo
            title="Resume – Peter Pinto"
            description="Resume of Peter Pinto – Senior Software Engineer with experience in distributed systems, geospatial intelligence, DevOps, and AI/ML."
            path="/resume"
        />
        <div class="page">
            // ── Header ────────────────────────────────────────────
            <div class="resume-header">
                <span class="eyebrow">"Résumé"</span>
                <h1>"Experience & " <em style="font-style:italic; color: var(--accent)">"Skills"</em></h1>
                <p class="lead">
                    "Senior Software Engineer & Technical Lead with experience in distributed systems,
                    geospatial intelligence, and AI/ML. Based in Charlottesville, VA."
                </p>
                <div class="resume-actions">
                    <a
                        href=RESUME_PDF
                        download="resume.pdf"
                        class="btn btn-primary"
                    >
                        "↓ Download Resume"
                    </a>
                    <a
                        href=RESUME_PDF
                        target="_blank"
                        rel="noopener noreferrer"
                        class="btn btn-outline"
                    >
                        "Open Resume in new tab ↗"
                    </a>
                </div>
            </div>

            // ── Tabs ──────────────────────────────────────────────
            // Pure-CSS tabs via :checked sibling selector.
            // Radio inputs live outside .tab-bar so the ~ combinator
            // can reach both .tab-bar and .tab-content.
            <input type="radio" name="resume-tab" id="tab-history" class="tab-radio" checked />
            <input type="radio" name="resume-tab" id="tab-pdf"     class="tab-radio" />
            <input type="radio" name="resume-tab" id="tab-tex"     class="tab-radio" />
            <div class="tab-bar">
                <label for="tab-history" class="tab-btn">"Work History"</label>
                <label for="tab-pdf"     class="tab-btn">"Resume PDF"</label>
                <label for="tab-tex"     class="tab-btn">"Resume LaTeX"</label>
            </div>

            // ── Tab Content ───────────────────────────────────────
            <div class="tab-content">
                <section class="tab-panel tab-panel--history">
                    <div class="experience-list">
                        <div class="experience-item">
                            <div class="experience-header">
                                <div>
                                    <span class="experience-company">"General Atomics Intelligence"</span>
                                    <span class="experience-title">"Senior Software Engineer & Project Technical Lead"</span>
                                </div>
                                <span class="experience-meta">"Jun 2023 – Present · Charlottesville, VA"</span>
                            </div>
                            <ul class="experience-bullets">
                                <li>"Grew from individual contributor to primary technical lead on the team's flagship project, contributing to a 2× year-over-year increase in contract value"</li>
                                <li>"Scaled the engineering team from 3 to 8 during rapid growth: defined interview criteria, led hiring, and provided mentorship and onboarding to new engineers"</li>
                                <li>"Led security certification (Certificate to Field) for a production system — achieved first-pass approval with no revisions required, avoiding an estimated 2–3 month deployment delay"</li>
                                <li>"Maintained 100% on-time delivery of all contractual requirements during a period of 50% team attrition; automation reduced turnaround for bug fixes and features to as little as one day"</li>
                                <li>"Implemented agile work tracking, code review standards, and created an \"Accelerator\" onboarding framework — reduced ramp-up time for new engineers and eliminated single points of failure"</li>
                                <li>"Delivered major customer demonstrations that expanded engagement scope and secured a 60% FY26 funding increase"</li>
                            </ul>
                        </div>

                        <div class="experience-item">
                            <div class="experience-header">
                                <div>
                                    <span class="experience-company">"Main Library Alliance"</span>
                                    <span class="experience-title">"System and Network Administrator"</span>
                                </div>
                                <span class="experience-meta">"Jun 2021 – Jun 2023 · Cedar Knolls, NJ"</span>
                            </div>
                            <ul class="experience-bullets">
                                <li>"Administered network infrastructure and IT operations for a consortium of 40 public library locations across northern New Jersey"</li>
                                <li>"Deployed and maintained Microsoft Azure resources; automated common help desk workflows (password resets, printer management, system health checks), reducing ticket volume and average resolution time"</li>
                                <li>"Developed the \"Main Directors Portal,\" a centralized web application (SQL, JavaScript, PHP, WordPress) adopted as a daily operational tool by library leadership across all 40 locations"</li>
                                <li>"Implemented proactive monitoring and alerting that reduced unplanned outages and maintenance windows across the Alliance"</li>
                            </ul>
                        </div>

                        <div class="experience-item">
                            <div class="experience-header">
                                <div>
                                    <span class="experience-company">"University of Rhode Island"</span>
                                    <span class="experience-title">"AI/ML Research Assistant"</span>
                                </div>
                                <span class="experience-meta">"Summer 2019 · Kingston, RI"</span>
                            </div>
                            <ul class="experience-bullets">
                                <li>"Selected to join a university AI/ML research team working on computer vision problems alongside graduate and postgraduate researchers"</li>
                                <li>"Developed, trained, and evaluated CNN models for human age estimation from facial imagery using TensorFlow; handled data preprocessing, augmentation, architecture experimentation, and hyperparameter tuning"</li>
                                <li>"Trained models on the university's GPU compute cluster (SLURM); presented intermediate results at lab meetings and contributed to experimental design"</li>
                            </ul>
                        </div>

                        <div class="experience-item">
                            <div class="experience-header">
                                <div>
                                    <span class="experience-company">"University of Rhode Island"</span>
                                    <span class="experience-title">"Teaching Assistant – Data Structures & Algorithms"</span>
                                </div>
                                <span class="experience-meta">"September 2018 - January 2020 · Kingston, RI"</span>
                            </div>
                            <ul class="experience-bullets">
                                <li>"Led lab and recitation sections for a core CS course, bridging theory and implementation through hands-on programming exercises in Java and C++"</li>
                                <li>"Held office hours and provided one-on-one support for debugging, algorithmic reasoning, and complexity analysis; graded assignments and exams with detailed written feedback"</li>
                                <li>"Co-developed supplementary course materials targeting common student challenges in pointer-based data structures and recursive algorithms"</li>
                            </ul>
                        </div>
                    </div>
                </section>

                <div class="tab-panel tab-panel--pdf pdf-container">
                    <iframe
                        src=RESUME_PDF
                        loading="lazy"
                        style="width:100%;height:100%;min-height:700px;border:none;"
                        title="Résumé PDF"
                    />
                </div>

                <div class="tab-panel tab-panel--tex">
                    <pre class="tex-source">{RESUME_TEX}</pre>
                </div>
            </div>
        </div>
    }
}