Articles · Shopify
Shopify Winter SWE Intern OA 2027: Ruby, C++, Criteria Assessment, and Pair Programming
Preparing for the Shopify Winter SWE Intern OA 2027? Learn the reported Ruby and C++ sections, Criteria assessment, pair programming, and next steps.
Updated August 17, 2026.
You open a Shopify internship assessment expecting one familiar LeetCode problem in Python. Instead, recent Winter 2027 candidates describe a broader sequence: an algorithmic problem in a language of your choice, smaller sections that require Ruby and C++, a fast Criteria assessment, and—if you advance—a collaborative pair-programming interview.
That mix can feel random. It is not. Each stage tests a different question: Can you solve an unfamiliar problem, read two programming languages, reason accurately under time pressure, and build software with another engineer?
This guide separates Shopify-confirmed process details from current candidate reports, then turns both into a practical preparation plan.
Quick verdict
Prepare for a multi-signal process, not three isolated tests. Shopify’s internship site officially describes mandatory assessments, a Craft Assessment interview with an engineer, and a final Life Story interview. Shopify’s careers FAQ also says R&D applicants may move directly into pair programming and take a brief predictive assessment.
The specific Winter 2027 details are newer and less permanent. In August 2026, candidates reported coding sections involving one flexible-language problem plus Ruby and C++, followed by a Criteria-hosted reasoning and work-style assessment. Treat those reports as a useful snapshot—not a guarantee that every location, stream, or invitation will match.
| Detail | Evidence level | How to use it |
|---|---|---|
| Mandatory assessments before the Craft Assessment | Shopify official | Expect screening before a live engineer interview. |
| Pair programming and a final Life Story | Shopify official | Prepare collaboration and career narrative early. |
| One any-language task plus Ruby and C++ sections | Winter 2027 candidate reports | Refresh syntax and standard-library basics in both languages. |
| Reported 35/25/25-minute coding split | Single-cycle candidate report | Practice switching contexts, but follow your own invitation. |
| Criteria reasoning plus work-style questions | Candidate reports; provider confirmed | Train pacing and consistency rather than memorizing answers. |
What the Shopify Winter 2027 process may look like
The safest process map combines Shopify’s public pages with current reports:
- Application and resume review: Shopify says only selected applicants receive follow-up. Candidate timing varies, so an assessment is a positive step but not an offer of a live interview.
- Shopify assessments: the internship site says successful applicants receive mandatory assessments intended to evaluate technical skill and likelihood of success.
- Craft or pair-programming assessment: Shopify describes a live conversation with someone in your craft. For R&D roles, the public FAQ specifically references pair programming.
- Life Story: the internship site calls this the final interview. It covers the choices, lessons, setbacks, and impact across your journey.
- Decision and team matching: successful interns are matched with teams based on interests, skills, and experience.
Order and count can change. Shopify explicitly says interviews vary by role and team, and internship candidates may see different assessment versions by country or engineering stream. Your invitation is the operating contract.
How to prepare for the coding assessment
1. Make the any-language problem your scoring anchor
Recent reports describe the flexible-language problem as the most algorithmically demanding section. Candidates mentioned graph-heavy preparation areas such as BFS, union-find, minimum spanning trees, dynamic programming, and greedy reasoning. That does not mean Shopify has published a topic list; it means graph fluency is a sensible hedge for this cycle.
Choose the language in which you can implement and debug fastest. Before coding, write down the input size, required output, and the operation that dominates runtime. A correct brute-force solution can be a useful baseline, but use the remaining time to remove the bottleneck and test disconnected, duplicate, empty, and boundary cases.
2. Treat Ruby as a reading-and-implementation test
You do not need to become a Rails engineer in a week. You do need enough Ruby fluency to understand a prompt, transform collections, and avoid syntax searches every few lines.
Review arrays, hashes, ranges, blocks, each, map, select, reduce, sorting with a block, string operations, and nil. Practice writing one short problem from a blank file so you remember Ruby’s method syntax, return behavior, and indexing rules.
A high-value exercise is CSV-to-object transformation: parse rows, reject malformed records, group by a key, and produce deterministic output. That resembles practical application code more than memorizing obscure Ruby trivia.
3. Refresh C++ safety, containers, and value semantics
For C++, focus on the subset needed to implement a small correct program. Review vector, string, unordered_map, set, queues, sorting, references, const, and the difference between copying and mutating an object.
Watch for integer boundaries, accidental insertion with operator[], invalid iterators, and expensive copies inside loops. If a prompt provides starter code, read the types and function signature before designing the algorithm. Passing hidden tests often depends more on respecting that contract than on using a clever data structure.
4. Practice the context switch itself
The unusual difficulty is not only Ruby or C++; it is moving between problem styles and language rules under one deadline. Run a simulation with three independent blocks: 35 minutes in your main language, 25 minutes in Ruby, and 25 minutes in C++. Use those times as a training format, not a promise of your actual assessment.
At the end of each block, record why you lost time. Separate algorithm gaps from language lookup, unclear requirements, and missed tests. Your next practice session should attack the largest category—not simply add another random problem.
What the Criteria assessment is testing
Shopify officially describes a brief predictive assessment that helps it understand how candidates approach problems, think critically, and notice details. Criteria, the assessment provider, says its cognitive tests measure problem solving, learning, critical thinking, and verbal and mathematical reasoning.
One Winter 2027 candidate reported 40 timed reasoning questions in 20 minutes, followed by untimed self-description questions. Do not automatically call that the CCAT: Criteria’s public CCAT page currently describes 50 items in 15 minutes. The mismatch suggests Shopify may use another product or configuration. Your email and on-screen instructions outrank any Reddit label.
A better strategy than trying to finish everything
Criteria’s own candidate guidance says it can be better to guess and move on than to spend too long on one difficult item. Use a two-pass mindset: answer questions you can solve cleanly, make an informed choice on time sinks, and preserve attention for later items.
For work-style questions, answer consistently and honestly. Do not reverse-engineer a fictional “Shopify personality.” Read qualifiers such as most, least, often, and always; contradictions created by rushing are more avoidable than having a normal human preference.
How to handle Shopify pair programming
Pair programming is not a silent race with someone watching your screen. Shopify’s public process frames the Craft Assessment as a chance to explore how you approach your craft. Recent intern invitations shared by candidates describe a practical object-oriented challenge led by the candidate with an interviewer.
The exact problem can vary, but the observable behaviors are stable: clarify the task, make a small plan, write understandable code, test it, and respond constructively when requirements change.
Use a five-step collaboration loop
Clarify: restate the goal and ask about invalid input, duplicates, ordering, persistence, and expected scale. Plan: name the smallest classes or functions that express the domain. Keep extension points proportional to the problem.
Implement: build one working path before adding abstractions. Narrate decisions that affect correctness, but do not explain every keystroke. Test: run a normal case, a boundary, and a failure path. Respond: treat a hint or new requirement as collaboration, not evidence that you failed.
If AI tools are allowed, stay accountable for the code
Some recent Shopify intern invitations quoted by candidates encouraged AI use. That permission is invitation-specific. If your instructions allow it, use AI for bounded tasks such as generating test cases, checking an API, or sketching a small implementation.
Never paste output you cannot explain. Review naming, assumptions, complexity, error handling, and tests aloud. A strong candidate can say, “This suggestion handles the happy path, but it mutates shared state and misses duplicate commands; I’m going to change both before we use it.”
A seven-day Shopify preparation plan
| Day | Focus | What to do |
|---|---|---|
| Day 1 | Baseline | Run one timed graph problem in your main language; log algorithm and implementation errors. |
| Day 2 | Ruby | Review arrays, hashes, blocks, sorting, strings, and nil; complete one parsing task from scratch. |
| Day 3 | C++ | Review STL containers, references, const, iterators, and boundaries; complete one clean implementation. |
| Day 4 | Mixed simulation | Run three timed blocks and practice switching languages without carrying assumptions between prompts. |
| Day 5 | Criteria | Practice short verbal, numerical, and spatial items under a strict timer; move on when stuck. |
| Day 6 | Pair programming | Solve a small OOP task aloud with a partner, tests, one changing requirement, and permitted AI use. |
| Day 7 | Final review | Confirm platform, languages, deadlines, and rules; review mistakes and rest instead of cramming. |
What happens after the assessment?
A strong OA does not create a guaranteed or immediate pair-programming invitation. Shopify reviews candidates in the context of the role, and candidate reports show uneven response times. Avoid treating another applicant’s timeline as your rejection deadline.
While you wait, prepare one small project for collaborative discussion and outline the turning points in your career or education. Shopify’s official Life Story description emphasizes the problems you solved, decisions you made, setbacks you experienced, and lessons you learned. That is why the dedicated Life Story guide complements this OA guide instead of competing with it.
Frequently asked questions
Is the Shopify Winter 2027 OA automatic?
Shopify’s internship page says successful applicants move forward to mandatory assessments, and its FAQ says only candidates selected to continue receive follow-up. That suggests some screening. Candidate reports about timing are inconsistent, so do not infer a universal automatic-OA rule from how quickly one person received an email.
Does every candidate receive Ruby and C++?
Multiple current and prior-cycle candidates reported required Ruby and C++ sections, but Shopify has not publicly promised that exact format for every applicant. Location, stream, and assessment version may differ. Prepare the basics, then follow the languages shown in your invitation and assessment environment.
Do I need a perfect OA score?
No public Shopify cutoff was found for this cycle. Passing all visible tests is useful, but correctness, hidden cases, runtime, resume fit, and the rest of the candidate pool may all affect progression. Optimize for a complete, tested submission rather than guessing at an unofficial magic score.
Is Shopify’s Criteria assessment the CCAT?
Do not assume so. Current candidate descriptions do not match the public CCAT format exactly. Criteria offers multiple assessments and employers can send different combinations. Read the product name, timing, and instructions in your own invitation.
Can I use AI during Shopify pair programming?
Some recent candidates say their invitations encouraged it, but permitted tools can change. Use only what your instructions explicitly allow. If AI is permitted, keep the reasoning, review, and final code visibly yours.
How long should I prepare?
If your algorithms are current and you have basic Ruby/C++ exposure, a focused week can cover the format. If both languages are new or graph problems are a weakness, two to three weeks is more realistic. Prioritize measured gaps over trying to learn every feature of two languages.
Final takeaway
The Shopify Winter 2027 process rewards range: algorithmic reasoning, lightweight Ruby and C++ fluency, fast but careful aptitude work, and collaborative software development. The best preparation is not to chase leaked prompts. It is to make each of those signals visible under realistic time pressure.
Start with Shopify Software Engineer questions, use the four-question practice sequence above, and review written solutions only after making a complete attempt. That gives you a repeatable workflow for the OA and a stronger foundation for pair programming if Shopify moves you forward.
Sources and Further Reading
- Shopify Engineering & Data Internship Program
- Shopify Careers FAQ
- Criteria: What to Expect on the CCAT
- Criteria Cognitive Aptitude Test Product Page
- Current Candidate Discussion: Shopify Winter 2027 OA
- Current Candidate Discussion: Shopify SWE Internship Loop
- Current Candidate Discussion: Shopify Pair Programming
Research note: This guide was checked on August 17, 2026. Shopify’s pages establish the official process; candidate reports are used only for current-cycle format details and may not apply to every location or applicant.