Michael R. Dinerstein
Senior Software Engineer (Full Stack)
md@missionmike.dev|Newport, Oregon, USA

Skills

Group by: |
14 years:
13 years:
10 years:
8 years:
7 years:
5 years:
4 years:
3 years:
2 years:
1 year:

Work Experience

The Real Deal February 2022 to August 2024

Senior Full Stack Developer The Real Deal

The Real Deal (TRD) runs a high-traffic real estate news website https://therealdeal.com. This is a Next.js website powered by headless WordPress in the back-end. It is hosted in AWS using custom-build Docker images in Elastic Container Registry (ECR), deployed to Elastic Kubernetes Service (EKS).

Challenge: Pod Resources

The back-end WordPress installation is home to over 100,000 articles and tens of thousands of tags. Dozens of writers and editors can access the site to create and organize content.

One challenge we faced was to allocate the correct amount of resources per Kubernetes pod, as well as to ensure the correct min/max number of pods are available for WordPress. With some light trail & error, we were able to iron this out and keep the site running smoothly for back-end editors and staff as well as front-end users.

Screenshot of therealdeal.com

Challenge: Checking Work

Initially this project was outsourced to a contractor. At the time, I was working with the internal team, focused on a different project.

When it was nearly time to be delivered, I checked the state of the work out of curiosity. I had hoped to learn a new technique or two from the developers. I was surprised, however, to find out that the bulk of this project didn't appear to follow healthy coding standards.

Based on what I found, I was nervous about the success of this project. This work was meant to be a milestone transition for the company's digital footprint: it combined seven CMS platforms for various real estate markets into a single powerful website to serve millions of visitors.

Fearing a potential botched launch, I brought up my concerns to management and I presented a plan to help get the project back on track. I recommended to:

  • Follow React and Next.js best practices.
  • Add tests with Jest in the front-end and PHPUnit in the back-end to cover critical functionality to start, then backfill additional coverage post-launch.
  • Improve TypeScript usage and remove loose "any" definitions.
  • Follow lint rules and guidelines with ESLint in front-end, and WordPress Coding Standards in the back-end.
  • Organize code and files for clarity in front-end and back-end repositories.
  • Implement a continuous integration (CI) pipeline to ensure all new pull requests don't break existing functionality.

While we experienced a bit of a setback to the expected launch timeline, I was much more confident in the launch of this project after we fixed the codebase in front-end and back-end. The code quality and development improvements greatly aided our future development and maintenance on this project.

Built a data application to visualize and analyze real estate data for several markets.
Implemented continuous integration standards and automated testing.
Improved team code review and development practices.
Configured VS Code Dev Containers for front-end, back-end, and data teams utilizing docker-in-docker setups for multi-container dev environments.

Cache Invalidation

The front-end Next.js setup is served behind CloudFront, so we had to implement robust caching and invalidation settings at multiple levels: Redis Object Cache, Next.js SSR, and CloudFront CDN.

We needed to maintain a balance of aggressive caching to save on AWS resources, while ensuring that the latest content was always available to visitors. To accomplish this, I led the effort to plan ideal cache settings for different sections of the website, as well as to architect a plan to trigger a cache-clearing mechanism to keep all content up-to-date when a post is edited in the back-end.

You can read more about this challenge on my blog here.

Image Assets and CloudFront Costs

The news website https://therealdeal.com/ houses hundreds of thousands of images, with several sizes for each image - millions of image assets. The cost of serving these images from the CloudFront CDN via AWS was very high, especially when certain articles would gain traction and go viral.

To remedy this, I proposed we serve image assets from a separate static domain, using Cloudflare's lower-cost CDN services to serve the image assets. This offloading of images saved thousands of dollars in monthly overhead.

Designed an address matching and geocoding solution with 90% success rate.
Designed a quarantine system to analyze potentially bad data.
Designed an internal API to manage and share data between platforms and teams.
Identified infrastructure adjustments to reduce monthly AWS costs by 50%.
Configured QA browser automation and reporting.
Designed a performance test suite for web and API endpoints.
Optimized web scrapers with Python, DocumentDB (MongoDB compatible), Airflow, Selenium Grid.

Recording Radio Film Connection & CASA Schools January 2014 to February 2022

Lead Developer / Designer July 2018 to February 2022Recording Radio Film Connection & CASA Schools

Launched a custom learning management system for all users and provided onboarding support and training for all company departments. Integrated with multiple platforms via Zapier automation.
Coordinated org-wide Salesforce and Pardot upgrades and training in partnership with a contractor.
Developed Salesforce-integrated payment portal with TypeScript, PHP and Authorize.net.
Designed and built a new marketing website for flagship product with GatsbyJS and WordPress, including conditional form fields within a multi-step form to keep partial applications for marketing.
Designed a system to organize customer reviews for market-specific landing pages using PHP and React.js.
Designed a geo-targeted tier system to optimize the sales funnel in Salesforce Apex.
Optimized marketing websites for performance and SEO.
Implemented automated testing with Jest and React.js, and continuous integration with GitHub Actions.
Mentored junior developers and designers, managed projects and oversaw contract work from Salesforce, SEO, design and marketing vendors.

Web Developer / Designer January 2016 to July 2018Recording Radio Film Connection & CASA Schools

Designed and built a custom learning management system for hybrid learning with WordPress, integrated with Salesforce.
Improved website performance and SEO in partnership with contractors via technical SEO improvements and content updates.
Developed internal APIs to publish content across multiple sites faster using WordPress and custom plugins.
Designed and built marketing landing pages, multi-step forms and surveys using JavaScript, jQuery, HTML and CSS.
Implemented version control for all projects with GitHub.
Managed email and web newsletter for 100K+ recipients in WordPress (web version) and Constant Contact.

Junior Graphic Designer January 2014 to January 2016Recording Radio Film Connection & CASA Schools

Designed and developed marketing and blog websites in WordPress and vanilla HTML, CSS and JavaScript.
Designed school curriculum and marketing graphics with Adobe InDesign, Photoshop and Illustrator.
Developed custom interactive curriculum exercises with vanilla HTML, CSS and JavaScript.
Designed ad campaigns, creative templates, email blasts and print banners.

Self-Employed November 2011 to July 2018

Freelance / Contract Web Developer and Graphic Designer Self-Employed

Met with clients to scope out work and plan projects, ensuring their visions came alive in graphics and web.
Converted print-version curriculum to enriched digital format for RRFC.
Worked with a variety of verticals including motorsports, legal, beauty, real estate, entertainment, places of worship, portfolios, construction, ecommerce, and education.

Urban Farm Agency / itBrand.co June 2016 to July 2018

Senior Web Developer, Contract June 2017 to July 2018Urban Farm Agency / itBrand.co

Met with clients and staff to plan and iterate projects.
Designed and built websites and web applications for clients in WordPress.
Mentored and worked with other designers and developers to ship projects for a variety of verticals including real estate, medicine, education, and legal.

Graphic Designer / Web Developer, Contract June 2016 to June 2017Urban Farm Agency / itBrand.co

Designed logos and website graphics for clients.
Built and updated landing pages and email campaigns.

Education

Santa Monica College

Database Applications Developer (Certificate)July 2017

Web Programmer (Department Certificate)July 2016