Day-of Quickref
3 things to say nobody else will
1. (Mike) "The posting flagged Japanese or Spanish as preferred — is APAC/LATAM expansion driving that?"
2. (Jones) "I looked at the store, US & EU — I could see the deliberate architecture behind it. Where do you want it to go?"
3. (Close) "I'll be direct — this is the role I'm looking for. Platform fit is real, the scope is meaningful, and I want to own something long-term. I hope we can make this work."
Technical 60-sec
• before/after > around (around breaks the chain if you skip $proceed()) · preferences don't compose.
• Prod indexers on-schedule → lead with the water.com SQLSTATE 40001 deadlock story.
• One cacheable="false" block kills FPC for the whole page. Separate Redis for cache vs session.
• Multi-currency: website=base currency, store view=display; catalog/price/scope=Website. Say: "strong on architecture, I'd learn the regional tax rules."
• Stripe webhook: verify sig + idempotent by event ID + 200 fast + async.
• Integrations behind message queues (your Salesforce/Akeneo/Odoo analogs). Cloud: build→deploy→post-deploy.
• Lead with Hyvä on perf (you sell Hyvä checkout extensions).
Rule: own "how Magento works"; for "how this store is configured" → "I'd look at the codebase."
Don't raise the SAS IPO. Save receipts → beth.evans@jmp.com. Downtown Cary Park if you've got free time.
The Day & Logistics
| Time | What | Your mode |
|---|---|---|
| 9:40a | Arrive: guard gate → name + "here for John Jones" → Building A (last on right past Bldg C) → text Christine | Early, calm, organized |
| 10:00a | Technical 1:1 — Mike Dubinsky (Sr IT Software Dev) | Deep, technical peer |
| 11:00a | Team panel — John Jones, Peter Jeong, Maria Rodriguez, Mike + Falco (Teams) | Business, fit, long-term |
| Noon | Lunch — John + team, on-site café | Human — Jones decides here |
Logistics
🏨 Embassy Suites Cary · 201 Harrison Oaks Blvd · 919-677-1840 · 2 nights (Jul 7 & 8) · conf 96767970
🏢 100 SAS Campus Drive, Cary NC 27513 (off Harrison Ave, close to hotel)
📱 Text Christine 919-264-4534 on arrival — she meets you at the main doors
🧾 Save all receipts → email beth.evans@jmp.com after the trip; mileage reimbursed. Airport: MKE.
Setup
Lobby by 9:35. Physical notepad with anchors + a few printed résumés. Phone silent (except the arrival text).
Switch registers deliberately walking into the panel. At lunch: let Jones talk, ask curious questions, don't pitch.
Stories loaded (STAR)
Salesforce 38k-locator (revenue-critical real-time API) · Stripe payments · NetSuite/ERP flow · Adobe Commerce Cloud upgrade + patch cadence · 60 sites / 11 yrs at ICM (longevity) · 8 Marketplace extensions (quality) · a prod incident + how you communicated up.
🎯 John Jones — the decision-maker
~29 yrs SAS/JMPjoined JMP 2007NC State — "Go Wolfpack!""Jonesie"wife of 30 yrs · Cary
Started at SAS as a web designer → web/online-marketing manager. Chose to sell JMP software online, picked the platform, built the function. Led JMP's company-wide web CMS (AEM). Just back from JMP's European mid-year meetings. Mandate: "all the systems JMP runs its business on." His language is business-first: "put technology in the hands of the business to help it operate more efficiently."
Rapport angles (authentic only)
• Origin story: "I looked at the store — US & EU — and I can see the deliberate decisions behind it: the multi-currency setup, the regional store views. I'd love to hear where you want it to go." He built it; being seen for that lands.
• NC State / Wolfpack — if it fits naturally, shows you did homework on Jones the person.
• Long-term builder — he's built for 29 yrs; your 11 at ICM + 3+ at Primo says "I build over time, I don't bounce."
• Avoid: technical weeds with him; don't be "on" at lunch.
What he's screening for
1) Business-outcome orientation (store = revenue channel) · 2) Longevity + trustworthiness (reliable steward of what he built) · 3) Culture fit in a tight-knit, 50-yr-old, employee-first company where long tenures are the norm.
The Panel
On your Round 2 panel — you already passed his bar. Wants a collaborator, not a threat. You're the senior hire (15+ yrs) — frame experience as collaborative, never superior: "I've seen this pattern — here's what I've learned; how do you handle it here?" Likely asks technical-specifics + "how do you handle a technical disagreement?" + "first weeks?"
Round 2 panel; likely the business/operations side of IT, not a Magento dev. Treat her as the voice of the internal customer. Plain language, responsiveness, reliability, follow-through, how you handle user-facing/store-UI issues.
He's heard your conviction in Round 3 — checking final commitment + that you're easy to manage: proactive updates, no surprises, no friction with the team. Reinforce owner-mentality + "you'll hear it from me before anyone else."
JMP's Magento dev; your 10am 1:1. Technical peer screening real depth + integrations + code quality. Full prep in the Technical tab.
Company context
SAS IPO: walked back — now "public readiness," no date. Don't raise it. If pressed: "A 50-yr-old, debt-free company taking its time — a stable foundation for a long-term role." JMP = standalone SAS subsidiary since 2022 (own P&L). JMP 19 current; Discovery Summit Oct 19–22, Baltimore. The store as a self-serve revenue channel matters more, not less.
10am Technical — Mike Dubinsky
Peer technical interview — he knows the codebase. Go specific. Tap a card to reveal the model answer (in your voice). Use Flashcard mode to self-quiz.
Plugin to modify a specific public method's behavior/return; observer when Magento already dispatches the event (can't change a return). Avoid preferences (only one wins, don't compose). before/after > around — around wraps a Closure, adds overhead, and breaks the chain if you skip $proceed(); only use it to conditionally skip/wrap.
Probes: why around's expensive; plugins are public non-final only; virtual types; sortOrder. Never use ObjectManager directly.
Prod = on-schedule; on-save deadlocks under bulk. Saves append to the _cl changelog, cron reindexes deltas via mview. Water.com: catalog/price index deadlocks as SQLSTATE 40001 in New Relic → triage: NR trace → indexer:status + check _cl sizes/stuck working → reset stuck indexer + targeted reindex. Long-term: healthy non-overlapping cron, keep _cl lean, stop the mass synchronous saves.
Probes: stuck-in-working (mview lock → indexer:reset); reindex vs mview; setup:upgrade silently flipping to save mode.
Redis object/session (separate DBs so a cache flush doesn't log everyone out), Varnish/Fastly full-page at edge, dynamic bits punched out via customer-data/private content. Slow page: measure first (New Relic PHP vs DB vs external; confirm FPC hit via headers), then hunt. One cacheable="false" block kills FPC for the whole page. Hyvä (Tailwind+Alpine) >> Luma for CWV — and you sell Hyvä checkout extensions, so say it.
Website (base currency + customer/payment scope) → store → store view (locale + display currency). catalog/price/scope = Global vs Website (deliberate local prices vs FX). For 12 currencies: separate websites per region (if settlement/tax differ) vs one website converting via rates. Honest framing: "Strong on the Magento architecture; I'd learn the regional VAT/tax business nuance."
Cart rules bite on stacking/ordering (priority + discard-subsequent). Story: a promo miscalculated because a custom total collector sat before the discount collector in the totals chain → fix in sales.xml ordering + stop-further-rules. Move: reproduce with one product, dump totals, walk the collector chain.
REST for server-to-server, GraphQL for storefront. Outbound ERP/CRM sync behind a message queue + consumers — storefront never blocks on a slow NetSuite. Same shape as your Salesforce 38k-locator, Akeneo, Odoo. Stripe webhook: verify signature + idempotent by event ID + 200 fast + async + store raw event to replay.
Branch → composer update → resolve 3rd-party compat → setup:upgrade → di:compile → SCD → test. Security-only: isolated quality-patches tool. Snapshot the DB first (migrations aren't reversible). 2.4.5/2.4.6 EOL August 2026 — great to ask "what version + is a 2.4.8 upgrade imminent?"
build (no DB, read-only FS, do SCD here) → deploy (maintenance, setup:upgrade) → post-deploy (warm cache, already live). ece-tools + .magento.app.yaml hooks; Integration→Staging→Production; CI/CD on Azure DevOps.
• Version + 2.4.8 upgrade given Aug EOL? · 12-currency modeling + catalog/price/scope? · system-of-record split NetSuite/Salesforce/Magento (queue or inline)? · Stripe webhook idempotency + NetSuite reconciliation? · Luma or Hyvä + Core Web Vitals? · Japanese/Spanish preferred → APAC/LATAM? · digital-goods entitlement provisioning + VAT?
Regional tax/VAT rules → "platform mechanics I've got; per-country compliance I'd learn from your team + config." This store's integration contracts → "I'd read how you drew system-of-record lines first." Exact config keys/CVEs → "I'd pull that up rather than misquote." Cert = Adobe Certified Professional (not Expert/ACE). Own "how Magento works"; ask about "how this store is configured."
Compensation
Offer-stage strategy (the real negotiation)
• $130K is your anchor — reasonable-to-good for a senior Magento dev at a stable analytics company in the Triangle. Don't compare to TELUS's $180–224K (different tier — Sr Manager pre-sales consulting).
• Leverage at offer time: they flew you out (invested) + TELUS is a live alternative ("I'm in process elsewhere" — don't name the number). A modest counter — ~$140–145K, citing the in-person final + market + ACE cert + 15 yrs + Marketplace track record — is defensible and won't sour things. Via Christine.
• Non-comp value: stability, real ownership, SAS's humane culture (35-hr weeks, tenure), remote/hybrid, a manager who already wants you.
• Decide before you fly: JMP (stable, own-one-thing, lower base) vs TELUS (higher pay, client-facing, AEM stretch) are different bets. Know your priorities so an offer doesn't catch you flat-footed.
Questions to Ask & Close
John Jones
• "What does the store need to do in the next 1–2 years it can't today?"
• "How's the store's role in JMP's go-to-market evolving — is self-serve growing vs enterprise-direct?"
• (lunch) "You've built this a long time — what's kept you at JMP?"
Mike
• Version + 2.4.8 upgrade given Aug EOL? · biggest technical challenge for the first 6 months? · how do code reviews work here?
Peter
• "What would make the team dynamic better with another dev?" · "A recent problem you're proud of solving?"
Panel close
• "What does the first 90 days look like from your side — what would you want me to prioritize?"
Prep compiled 2026-06-30 · private — do not share · JMP final panel, July 8 2026