A (sort of) brief history of me
A wayward path from humble beginnings to engineering management at Chicago’s beloved unicorn startup, Sprout Social, to building an industry-leading community solar platform at Arcadia.
> A strategic pivot
A reorganization of the company left us with fewer engineers and the same business objectives. We needed a new strategy that would take us in the right direction. With no time for a pure greenfield approach, I laid out the plans for a modified Strangler Fig pattern to incrementally replace the legacy platform with a modern and scalable tech stack.
> With great responsibility comes a new title
The platform re-architecture vision was just the first step towards broader technical leadership. With a promotion to Senior Staff Engineer, I was tasked with turning that vision to reality and leading the team to build a platform that would support the company’s growth for years to come.
> Out with the old, in with the new
The OG Arcadia platform was built long before Community Solar was a thing. After years of trying to retrofit the platform to support the current business model, my manager asked me a simple question: “What would you do if you could start from scratch?” Domain-driven design, microservices, and event-driven architecture, to name a few things. Oh, and a data model that actually aligns with the reality of the business.
Eric is wonderfully pragmatic in every discussion I’ve engaged with him. He sees the advantages and disadvantages of differing approaches clearly and judges the pros/cons effectively.
— Anonymous peer feedback
> Changed hats
Change was in the air. After recognizing a need for more technical leadership on the team, I decided to take off my management hat for the first time in 6 years. I hired my replacement and transitioned to a Staff Engineer, where I felt I could better contribute to team’s growth and our business’s objectives.
Eric is very good at prioritizing tasks even when the team has to juggle multiple projects with constantly shifting priorities. He reassesses priorities and effectively helps the team refocus when needed.
— Anonymous peer feedback
> Ladder up
The Engineering Growth Framework was great. So great, the company decided to create a Growth Framework for everybody, with a few more rungs on the ladder. I led the effort to integrate the old 7-level framework into the new 10-level system by resetting the engineering-specific technical competencies and expectations for each level and splitting out the management-specific competencies into a separate track.
> Mo’ people, mo’ responsibility
We were growing fast and I was growing with the company. Our CTO took me under his wing and gave me the opportunity to make a broader impact, including managing multiple teams working on disparate initiatives and parts of the platform.
Eric is an amazing manager, coworker, and engineer. He possesses all the soft skills needed to be a good manager, being very observant, communicative, and supportive.
— Anonymous peer feedback
> Revamped engineering onboarding
My first few months of onboarding weren’t the most efficient, so I decided to make things better for the next new hire by rebuilding the Engineering onboarding program from the ground-up. The program included a Guide to the First 90 days, a mentorship system, and a series of technical, product, and company culture sessions to help new engineers ramp up quickly and feel at home.
> Joined Arcadia to solve climate change
My passion for making a positive impact on the world led me to join Arcadia, a company on the front lines of the fight against climate change. I joined as an Engineering Manager to grow and lead a team of engineers building the billing and payments platform.
> Promoted to Staff Software Engineer
Yep, Staff, like a wizard, but less awesome. (Still a pretty great job, though.)
> Redesigned the web app
Redesigned every pixel of our web app in just 6 months. Created new React components for our design system, replaced bespoke components throughout the app with design system components, and finessed CSS to be theme-aware in legacy parts of our app. The result? A cohesive UI. Unprecedented levels of shared code. A seamless rollout. And >85% positive customer feedback.
See some components I built in Seeds> Transitioned to the product team
After 4.5 years at the helm of the engineering team in marketing, I stepped into an engineering management role on the product team. My first task? Migrating the heart of Sprout—the social media Smart Inbox—to React.js.
Check out the Smart Inbox> Won a Value Award
I was recognized for my work throughout my tenure at Sprout, including establishing the first design systems used in web development at Sprout and running point on bringing our marketing web properties into compliance the the GDPR and ePrivacy regulations. I received the award for embodying the Sprout Value of “Embracing Accountability.”
Learn more about the Sprout Values> Planted Seeds
Invited to join the team tasked with building a new, unified design system to power brand and product development at Sprout—Seeds. Implemented a “design token”-based system that output color palettes, typography styles, spacing values, border radii, shadow and animation values, and more. The system generated SCSS, JS, Swift, and other assets for design tools, web development, mobile development.
View design tokens on the Seeds website> Climbed another rung on the corporate ladder
Somehow they let me get away with putting Señor Engineer on my nameplate.
> Architected a headless CMS and static site generator
Created a utility-class-based CSS framework built on Seeds. Integrated custom, branded components as Twig templates with a Wordpress page builder. Wrote custom plugins to optimize pages and individually deploy them to AWS S3 and Cloudfront as AMP-compliant static HTML. Blew away the competition with page speed scores and watch conversion rates climb.
View sproutsocial.com> Turned over a new leaf
All the template-making and design system work paid dividends pretty quickly. Rebranding the company is a helluva lot easier when you just need to update a few color variables used throughout hundreds of website and blog pages.
> Ventured into Engineering Management
It was like when my dad handed me the keys to the car for the first time: equal parts empowering and f*ing terrifying.
View my Manager README> Hired a human
Finding the right person is hard, but I got really lucky on my first attempt to hire someone. It was probably the single best decision I made in my career. (He’s pretty great, as far as humans go.)
Check out my first hire’s website> Built my first design system
Refactored the website to use semantic HTML and CSS in place of one-offs. Added Sass variables to standardize colors, font sizes, and more. Implemented responsive design methods. Created shared templates from bespoke pages.
> Pioneered marketing development at Sprout Social
Talked my way into an incredible company despite having just a handle of Wordpress sites, a few pet projects, and a lot of gusto.
> Built a SasS product, marketed it, and tried to run a business
Developed and deployed a Meteor.js web app for building personal landing pages. Used a mobile-first, responsive approach to design. Coded the backend in Coffeescript and frontend in Coffeescript, LESS, and HTML templates.
> Tech coordinator at Keller Williams Success Realty
Designed web and print marketing materials for real estate agents. Wrote and published numerous web technology guides and tutorials. Designed and developed recruiting and personal websites for agents.
> Built my second single-page app (and got PAID)
Built a simple web app to replace the Android app I developed 1.5 years ago. Used a Github repo to host Markdown files, parsed them to JSON in PHP, then rendered the content with a jQuery + AJAX frontend. Developed and deployed in 2 weeks.
> Built my first single-page app
Built a Markdown-based, flat-file backend in PHP and a jQuery + AJAX frontend for my blog. My first single-page app was born.
> Just for fun
Completed 3 CodeSchool courses for Ruby on Rails in 2 months. Designed, developed, and deployed a MongoDB + Nginx + Rails pet project on Amazon EC2.
> Embraced the freelance life
Designed and developed 7 Wordpress-based websites and blogs in 2 years. Helped pay my way through grad school and then some.
> Internship at Redemption Bible Church
Embarked on a volunteer internship at my church, focused on graphic and web design. In 3 months, my mentor and I redesigned the church's brand, rebuilt the website, and created brand identities for 7 programs and events.
> Released an Android app
Taught myself Java and the Android SDK, created a UI with Photoshop and Illustrator, and developed the app in 4 months—while simultaneously designing a website for the nonprofit.
> First opportunity
Approached by a friend looking for an Android developer to build an app for his new nonprofit. Young, naive, and hungry to learn, I said, “Yes” and started to learn Java.
> Started grad school
Began to work on my Masters in Teaching. Craving puzzles and code challenges, I continued to read about computer science and work on programming exercises in my free time.
> Graduated from Michigan State University
Graduated with a B.S. in Mathematics. Took Intro to Programming as an elective in my third and final year of college. Worked 3 weeks ahead and completed the lab exercises prior to class. My passion for programming was ignited.