About Me

I’m a Design Engineer who enjoys bringing together design, technology, and problem-solving to create digital experiences that are intuitive, accessible, and meaningful. My work combines UX design with front-end engineering, allowing me to bridge the gap between concept and implementation while delivering solutions that meet both user needs and business goals. Since 2016, I’ve been helping build enterprise web experiences at Texas Instruments, contributing to UX design, design systems, front-end development, personalization, usability research, and accessibility initiatives. I enjoy collaborating with cross-functional teams to transform complex challenges into simple, scalable, and user-centered solutions. With a background in Fine Arts from San Jose State University, I approach every project with both creativity and technical precision. I work with modern web technologies, including TypeScript, JavaScript, HTML, CSS, SASS, REACT, and component-based design systems, to create experiences that are both visually engaging and technically robust. I’m passionate about continuous learning and always looking for opportunities to improve my craft. Whether I’m designing a new interface, refining a user journey, or developing reusable front-end components, my goal is to build products that make technology easier to use and create lasting value for users.
This site is hand-built with TypeScript and SASS - no framework, no CMS. Content is data-driven (case studies and experience entries render from typed JSON), and the design system is authored as reusable SASS mixins rather than one-off styles, so a pattern like the glass-panel treatment below is defined once and shared across the Projects grid, Experience cards, and contact form.
@mixin glass-surface($radius: 20px) {
background: rgb(255 255 255 / 55%);
backdrop-filter: blur(28px) saturate(180%);
-webkit-backdrop-filter: blur(28px) saturate(180%);
border: 1px solid rgb(255 255 255 / 40%);
border-radius: $radius;
box-shadow:
0 8px 32px rgb(0 0 0 / 12%),
inset 0 1px 0 rgb(255 255 255 / 60%);
}Applied to cards and panels, but deliberately not to form inputs - typed text needs reliable contrast, so form fields stay solid even when their container goes glass.