Syn By Design

Freelance developer, trainer, & consultant.

👋 Hi. I’m Eric Masiello, and this is what I’m all about.

I am a principal software engineer and domain architect at Vista where my teams and I develop front-end libraries that make design capabilities scale. Our tech stack is primarily TypeScript, React, and MobX. While I love building user interfaces, building libraries that support rich experiences adds the additional challenge of designing for more than just my needs. Not to mention, I must consider other important requirements such as accessibility, performance, and our API’s design.

My teams and I have worked on some unique projects. I prototyped a CLI tool and then partnered with other engineers to design and build out a tool called “Create Design Stack Project.” The CLI walks you through a series of prompts and generates nearly everything you need to contribute to Vista’s design capabilities ecosystem. I also helped brainstorm tooling that improves how engineers build and test libraries inside their host applications (think npm link, but much better!). This is on top of all libraries we build for other engineers at Vista so they can build advanced design experiences throughout our site.

I have an admittedly unusual love for writing unit and integration UI tests. I take inspiration from the great Kent C. Dodds and have turned my testing philosophy into an internal course at Vista.

Lastly, I love to tinker on the edges of web and user interface development. I’ve begun digging into Rust because I’m excited by what additional possibilities it enables on the web via web assembly. Also, being a self-proclaimed Apple fanboy who loves to build UIs, I’ve taught myself a reasonable amount of Swift and SwiftUI. I even launched an Apple Watch app in the App Store that counts beats per minute when listening to music.

Resume

Eric Masiello

Full Stack JavaScript Engineer

Over 10 years of professional experience in web development and design with a passion for developing rich internet applications using modern JavaScript frameworks

Technical Skills

  • Web application development
  • npm library development
  • Cross browser development
  • Accessibility
  • Performance
  • React
  • React Native
  • JavaScript
  • Typescript
  • HTML5
  • CSS
  • SCSS
  • Styled Components
  • CSS Modules
  • Node
  • Express JS
  • Redux
  • Gatsby
  • Jest
  • Mocha
  • React Testing Library
  • Webpack
  • Rollup
  • Gulp
  • Babel
  • Wordpress
  • PHP
  • Git
  • MySQL
  • Mongo

Professional Experience

Vista

Domain Architect (2021 — Present)
Principal Software Engineer (2020 — Present)
UI Architect (2019 — 2021)
Senior Software Engineer (2016 — 2020)
  • Partnered with the a11y working group to define and ratify an organization-wide accessibility RFC
  • Developed front-end and accessibility standards and training
  • Designed in-house front-end learning program
  • Architect of Print Designer UI library; optimized for mobile experiences via custom build scripts supporting tree shaking, small CSS modules, and flexibility via components and custom hooks
  • Technical architect and team lead for rearchitecture of flagship Website Builder; dramatically expanding builder capabilities and enabling customers to create entirely customized "blocks"
  • VistaPrint Digital UI Component library architect
  • Full stack engineer across multiple products utilizing React and Node JS
  • Mentor junior & senior engineers on front-end and Node development
  • Career coach and manager for junior & senior engineers

Advisory Board Company

Principal Front-End Developer (2013 — 2016)
Lead Front-End Developer (2011 — 2013)
  • Principal engineer on multiple health care and higher education RESTful web applications using SCSS, Angular, Ionic, Cordova, Knockout, jQuery, Gulp, and Grunt
  • Advisory Board UI framework CSS Architect
  • Authored and trained two one–week-long front end developer boot camps
  • Coached and mentored junior engineers and designers
  • Winner of multiple Advisory Board Hackathon competitions
  • Acted as cross-product accessibility consultant

US Census Bureau

Chief of Human Resources Info Systems Branch (2010 — 2011)
Senior Web Developer & Team Lead (2008 — 2010)
Web Designer & Developer (2003 — 2009)
  • Managed 9 direct reports
  • Acted as project manager for HR Systems: developing project plans, wireframes, & milestones
  • Developed and documented visual style guide for engineers, enforcing HTML semantics, best practices, UI, and UX consistency
  • Lead developer for Census Human Resource Information System (CHRIS) using on .NET and SQL Server

Talks & Workshops

  • Opinionated React Testing Workshop(2021)

    In developing Design Stack, Vista's component library for design experiences, I set a high bar for our libraries' test coverage: 100%. This high bar forced me to understand deeply the testing technologies and how to best author tests to be resilient, comprehensive, and beneficial to other engineers. In this workshop, I cover the most valuable parts of Jest's API, explain when snapshot testing is appropriate, and demystify all the confusing aspects of React Testing Library. Lastly, I share a fair amount of my own opinion on organizing and authoring tests as documentation.
  • React Performance(2019)

    This talk covers techniques for improving the performance of your React application. It discusses code-splitting, memoization, performant usage of React context, and how to measure the impact of your code change using Chrome's performance profiler and React's developer tools.
  • How to Tree Shake(2019)

    While we'd like to believe build tools will always magically "do the right thing," the truth is we must author JavaScript libraries "correctly" to support the diverse environments we'll want to execute our code. This talk explains the impact CommonJS and ES Modules have on these environments. It compares Rollup to Webpack, explaining when each is the appropriate choice. And finally, it touches on "side-effects" and how to mitigate their impact on code bundles.
  • Let's Make an Accessible Component(2018)

    At Vistaprint, we believe accessibility is vital. This talk showcases a tabbed interface. I explain why it is inaccessible and then walk through how to refactor the code to maintain the same visual presentation but make it fully accessible to keyboard and screen reader users using ARIA roles, labels, and JavaScript.

Freelance & Related Experience

Encoda (2022)

Consultant
  • Enabled white-labeling of Encoda BackOffice Product
  • Adopted end-to-end and visual regression testing
  • Actively migrating front-end to a components to solve scalability and promote best practices

General Assembly (2017 — 2021)

Instructor: JavaScript 101 Workshop
  • Teach students the basics of JavaScript and the DOM

General Assembly (2017 — 2021)

Instructor: Code in One Day
  • Teach a non-technical audience the basics of front-end web development using semantic HTML and CSS technologies. Students apply these skills to build an accessible and responsive brochure website.

General Assembly (2016 — 2018)

Part-time Instructor: Front-end Web Development
  • Teach students how to build web sites using HTML5, CSS, JavaScript, and jQuery

Packt Publishing Mastering React Native Book

Release January 2017

Author
  • Teach front-end web developers how to create mobile applications for iOS and Android using React Native

General Assembly (2017)

Instructor: API Workshop
  • Teach students with limited technical experience the fundamentals interacting with RESTful APIs. I created custom course material that explained key concepts including HTTP verbs and JSON data. I also created a back-end service use Node and a front-end using React, Redux, and Redux Saga. These services were used by students to implement custom routes and controllers using Express.

Packt Publishing Mastering React.js Video (2015)

Technical Reviewer
  • Provide insight and assess technical accuracy of video content and offer suggestions to improve relevance for an audiences new to React programming

Education & Training

University of Maryland, Baltimore County
Catonsville, MD (2003)

Bachelor of Science Information Systems Management

Jamstack Conf
Online (2020)

JS Conf
Carlsbad, CA (2018)

Chain React Conference
Portland, OR (2017)

Scrum Alliance
Washington, DC (2017)

Certified ScrumMaster