Up to 30 hours a week
June 1, 2026
No
Walnut Creek, CA
$70/hour, 1099 Form
No
WordPress is my primary CMS and has been for about 18 years, where I have expert-level experience. I’ve also worked with HubSpot CMS for email and landing page work, touched Drupal briefly, and early in my career worked with custom ColdFusion-based content management systems.
Within WordPress, my preferred page builder is Elementor Pro, which I use daily at an advanced level, going well beyond native functionality with custom CSS, custom JavaScript, and custom templates. I’m also experienced with Gutenberg, Divi, and WPBakery. I choose my build approach based on project needs rather than defaulting to one tool.
HTML, CSS, and JavaScript have been core to my work for 25 years. I write clean, hand-coded markup and styles daily. I can build layouts and interactions from scratch or just tweaking existing code. I’m comfortable with CSS Grid, Flexbox, responsive breakpoints, animations, and custom properties.
For JavaScript, I write custom scripts for UI behavior, event handling, and DOM manipulation. Recent examples include a custom sticky header implementation and an expandable screenshot interaction built entirely in vanilla JS.
On the WordPress side, I build and maintain custom child themes, write custom functions in functions.php, create custom page templates, register custom post types and taxonomies, and configure Advanced Custom Fields for structured content management. I’ve also built a custom plugin integrating QuickBooks Online with Formidable Forms via REST API, which required substantial PHP development beyond typical theme work.
My first step with any live production issue is to replicate it on a staging environment before touching anything on the live site. That gives me a safe space to diagnose and test fixes without risking further disruption. From there I use browser DevTools heavily: console errors, network requests, computed styles, and the performance panel all give me different angles on what’s breaking and why.
For server-side issues, I’ll check web host error logs to catch PHP errors or failed requests that don’t show in the browser inspector.
For plugin conflicts, I’ll deactivate plugins systematically to isolate the culprit, then either find a configuration fix, replace the plugin, or write custom code to replicate the functionality without the conflict.
After a build, I run the page through PageSpeed Insights and WebPageTest to get a baseline and identify what’s causing the most drag. I look at LCP, INP, and CLS specifically since those are the Core Web Vitals that matter most for both performance and SEO.
From there, the fixes depend on what the audit surfaces, but common actions include converting images to WebP format and adding proper width and height attributes to prevent layout shift, deferring or removing render-blocking scripts, auditing and consolidating CSS, setting up proper caching rules, and lazy loading below-the-fold content. I check font sizes and layout behavior at multiple breakpoints rather than just the standard mobile breakpoint. I also monitor performance over time rather than treating it as a one-time fix.
I’ve managed a wide range of third-party integrations in WordPress including Zoho CRM via Gravity Forms, Formidable Forms with the QuickBooks Online API, Wufoo embedded forms with payment processing, Google Tag Manager, GA4, Hotjar, Microsoft Clarity, and AWS S3 for file storage.
For the QuickBooks Online integration I built specifically, I added error handling and admin notifications so that if a bill creation fails for any reason, finance staff are alerted immediately rather than discovering missing data later. I monitor integrations after launch too since a plugin update or API change can silently break a connection, so periodic checks and alerts are part of how I maintain data accuracy over time.
In late December 2024, I was preparing to launch a new section on Ciao Bambino that included site-wide changes. During staging testing, I discovered a JavaScript conflict between the existing menu plugin and multiple slider components on the homepage, causing unpredictable behavior across the page. With Ciao Bambino’s post-holiday traffic spike imminent and family commitments over Christmas, I made the call to remove the third-party menu plugin entirely and replace it with a native WordPress menu using wp_nav_menu() and a custom JavaScript file to handle all interactive behavior. I completed the fix on Christmas Eve and launched the changes on Christmas Day. By December 29th, traffic had risen significantly and the site performed flawlessly throughout the holiday season.
I’ve spent 23 years translating between technical reality and non-technical expectations, so handling revision requests from non-technical stakeholders is something I do constantly and take seriously. My approach is to acknowledge the request, ask clarifying questions to understand the underlying goal, and then present options with honest trade-offs. Sometimes what a stakeholder asks for isn’t technically what they actually want, and part of my job is to figure out what success looks like for them and find the best path forward.
Accessibility has been part of my standard practice for years rather than something I address after the fact. I’m familiar with WCAG 2.1 AA standards and apply them throughout the build process: proper heading hierarchy, sufficient color contrast, descriptive alt text on images, keyboard navigability, focus states, and ARIA labels where needed.
I use Lighthouse to audit for accessibility issues alongside performance, and I address the issues as I’m developing the site. I treat accessibility as part of delivering a quality product rather than a separate compliance checklist.