Automated Referral Network
I am the lead (and sole) developer for Automated Referral Network, a one-of-a-kind business leads generation and management service. It was developed as a standalone business app utilizing Progressive Web App technology. Using WordPress and Paid Memberships Pro as a base for the website, I wrote thousands of lines of modern PHP 8.1 code for the backend of the site, implementing custom logic to manage editing/saving/sharing contact info, connecting contacts, and sending emails and SMS messages on behalf of members. Technologies involved include:
- Used as the basis of the site, since it’s easy to use and extremely flexible, with a wide array of plugins and tools available.
- I also created several custom “blocks” for the Gutenberg editor.
- Paid Memberships Pro (to handle basic membership/checkout functionality)
- Progressive Web App technology
- This is a modern set of web APIs that allow a website to be given app-like functionalities, including the ability to install a site as a self-contained app on someone’s phone (or even desktop if using Chrome or Edge), as well as keep some pages accessible offline via caching.
- PHP 8.1
- Using the latest version of PHP provides a great deal of technical and performance benefits, such as enums, typed properties, better static analysis, etc.
- I implemented custom logic to handle actions such as:
- Sending referral emails to contacts based on various criteria such as distance, blocked business types, whether they’ve already met, and so on.
- Rewarding network members with more referrals based on how many contacts they’ve added to the system and completed the info for.
- When someone registers with the network, the contact info he enters for himself becomes the canonical source across the network, preventing duplicated/outdated info.
- Custom MariaDB queries and tables for storing user, contact, and referral data
- Due to lack of ergonomics in using the wpdb interface built into WordPress, I ended up writing my own custom database abstraction classes and methods to improve type-safety and readability of code.
- Several custom tables with many columns of various types were required to store all the required data.
- Custom integration logic was required to manage connections between member data, WordPress user accounts, and Paid Memberships Pro sign-up logic.
- Used for most of the custom Gutenberg block logic, including dynamic rendering on the front-end.
Involvement with WordPress
I have been a very active contributor to the WordPress block editor (“Gutenberg”) project, being involved in over 1000 issues and pull requests. I myself have authored over 110 pull requests that were merged into the main codebase, and I have helped review and merge over 300 PRs by other developers.
I have also been involved in several discussions on the Make WordPress Blog and Slack channels, resulting in some notable mentions in some WP Tavern articles:
- Responsive Web Design Developer
- Front End Libraries Developer
- Data Visualization Developer
- APIs and Microservices Developer
- Information Security and Quality Assurance
- Full Stack
My own coding projects
Contributions to open source projects
- WordPress Gutenberg (110+ PRs); listed as a “noteworthy contributor” on the WordPress 5.4 and 5.5 About pages.
- dir-archiver (1 PR)
- Paid Memberships Pro (4 PRs)
- PHPStan documentation (2 PRs)
- PMPro Pay by Check Add On (1 PR)
- PMPro Register Helper Add On (1 PR)
- Mailgun PHP client (1 PR)
- Symplify PHPStan Rules (2 PRs)
- Telnyx PHP SDK (1 PR)
- PhpStorm stubs (2 PRs)
- DefinitelyTyped (1 PR)
- PHP docs (1 PR)