Verified Expert in Engineering
From payments to maps to real-time updates, ambitious UI/UX, and those ubiquitous QR codes, Eric has built it for startups and enterprises. And he won't get stuck where many engineers make time-wasting mistakes: geospatial data, simple logins for everyone (you too, enterprise SSO), in-app search, time zones, email deliverability, user permissions, and other stuff you shouldn't have to worry about. Eric is proactive and happy to communicate at any level of technical (or non-technical) detail.
React, PostgreSQL, TypeScript
The most amazing...
...thing I've built is an interactive data visualization to help doctors prescribe the most effective antibiotics based on their hospital's data.
Full-stack Developer | Tech Lead
- Led development and documentation for an app to query and visualize geospatial data. Team members said the five pages of engineering documentation were succinct and helpful in gaining worker confidence and quick contributions.
- Built an integration between two services, Auth0 (login) and Streamlit (data science UI development), enabling data scientists to rapidly develop an app that let clients use their corporate login, without needing help from software developers.
- Fixed bugs quickly in a legacy application authored by employees no longer with the company.
Senior Front-end Engineer
- Merged two fragmented UI repositories into a single app and added many production concerns, including HTTPS, code-splitting, request tracing, code linting, a graceful fallback UI, and tracking for uncaught exceptions.
- Merged the login from two fragmented apps with some emails and hashed passwords in a PostgreSQL database, and some in AWS Cognito, into Auth0 with a "trickle migration" so no users experienced interruptions or had their passwords reset.
- Mentored two new front-end hires, both of whom were able to get up and run and open pull requests within their first two days. One said he learned more in one code review from me than he had in the last year at a previous company.
- Refactored a legacy React app, taking it from 20,000 production and test code lines with 15% branch coverage to 13,000 production and test code lines with 79% branch coverage, without a complete rewrite and without bringing the app down to end-users.
- Implemented relationship-based access control (ReBAC) appropriate for B2B SaaS, with an authorization model including internal admins, tenant organizations, parent-child resources, and client users with various roles.
- Built an embeddable UI widget with telemetry and consumer-grade animations, with a total bundle size under 10kb minified and gzipped size.
- Built client onboarding tools in Retool and trained customer success to continue creating their tools, reduced onboarding time in half, and freed the small engineering team from internal tools to focus on client-facing features.
- Added OpenAPI 3.0 schema to API and automatically generated and published SDK when the schema changed.
- Developed modern web applications for healthcare providers and hospital administrators. Integrated modern technology and paradigms like serverless, React, and OpenID with legacy healthcare systems.
- Fixed race conditions and other tricky bugs so things could "just work" in all browsers.
- Mentored team members in the new SharePoint Framework, which emphasizes React, TypeScript, and modern DevOps practices. Brought an intranet used by 1,700+ people into the present.
- Presented at a developer brown-bag session, showing how to use debugging tools on front- and back-end code simultaneously.
- Trained a team on how to write unit tests for a React application.
The Sanford Guide
- Reduced the odds that the human race will be wiped out from super-bacteria by designing and building an interactive data visualization to help hospitals use antibiotics effectively, currently used by clinical decision-makers around the globe.
- Mentored team members in Node.js and led the creation of an OAuth 2.0 and REST API server for secure authentication and interaction from the web and mobile apps.
- Maintained six Android applications from a single codebase with the ability to roll out new features quickly for some or all apps.
- Hacked Google Sheets into a CMS, which resulted in getting hugs from a medical doctor who no longer had to play the "Which email has the latest version of the Spreadsheet?" game.
- Performed many roles traditionally fulfilled by IT operations (due to the company's small size)—including server provisioning and hardening, round-the-clock emergency resolution, and database administration.
- Happily communicated technical concepts and their business impact to non-technical management in plain English.
Babcock & Wilcox Enterprises
- Developed and maintained business applications used daily by project management, warehouse management, accounting, and human resources.
- Refactored a complex timekeeping application to eliminate 16 hours per week of manual accounting work.
- Built great relationships by collaborating with the end-users.
I was the sole developer and wrote the rider UI (installable as an app), as well as the manager portal, payment processing integration, QR code passes emailed to riders, and driver app to scan QR passes and provide real-time bus location.
The link shows the rider app with a real-time shuttle location and a link to buy tickets. The UI is very simple and if I had more time to spend on it, it would have been even simpler.
Codeck | Webhttps://codeck.ericp.co
Technologies: D3.js, Webpack, HTML, Sass, Jest (for unit testing), originally CircleCI for continuous integration and deployment to GitHub Pages, now Netlify for CI and hosting.
The code is available at GitHub.com/epeterson320/codeck.
Triangle Calculator | Webhttps://triangle-calculator.ericp.co/
Technologies I used: React, Webpack, Redux, Sass, Jest (for unit testing) originally CircleCI for continuous integration and deployment, now Netlify for CI and hosting.
The code is available at GitHub.com/epeterson320/triangle-calculator.
A representative sample of my work that exemplifies the public interface's definition for encoding and decoding text strings to and from a permutation of an ordered set, represented as an array, is available in the GitHub link mentioned above.
Occam's Flashlight | Androidhttps://github.com/epeterson320/flashlight
I wanted to do this with a small app since for this project I was more concerned with process than results. The app itself is what I ended up naming "the simplest possible flashlight."
Antimicrobial Therapy, Inc. | Android Appshttps://play.google.com/store/apps/details?id=com.sanfordguide.amt
• Rolled all of the apps into one codebase with shared core features.
• Corrected concurrency errors, bringing app launch from three seconds to 0.2 seconds.
• Optimized a slow SQLite, full-text search query to be blazing fast.
• Added additional features requested by customers.
Express.js, OAuth 2, MUI (Material UI), Redux, Jest, Plone, React Native, Selenium, Bootstrap, Spring, Akka, NestJS, Deck.gl, Spring Boot
React Apollo, Auth0, JSX, NPM, Git, GitHub, SendGrid, Prisma
Automated Testing, Functional Programming, Functional Reactive Programming, Actor Model, Jamstack
Amazon S3 (AWS S3), JSON, NoSQL, PostgreSQL, PostGIS, Google Cloud, Cloud Firestore, MySQL
Writing & Editing, Authorization, Full-stack, API Integration, Charting, CI/CD Pipelines, Architecture, APIs, Web Development, Front-end, Apollo Server, Mapbox SDK, SAP, Apollo, Engineering, QR Codes, Geolocation
Amazon Web Services (AWS), Android, Mapbox, Docker, AWS Lambda, WordPress, Azure, Google Cloud Platform (GCP), Mobile
Bachelor's Degree in Industrial and Systems Engineering
Liberty University - Lynchburg, VA, USA
Reactive Programming in Scala
École Polytechnique Fédérale de Lausanne