I Passed the Visa CodeSignal in 2026: The Actual Questions and 7-Day Prep Plan

Visa CodeSignal OA guide cover

Quick Facts

Company / PlatformVisa × CodeSignal General Coding Assessment (GCA), the visa codesignal SWE new-grad and intern OA.
Questions4 per test: 2 easy, 1 medium, 1 hard.
Time limit70 minutes, one sitting, no pause.
Total score600 points (CodeSignal GCA default for SWE).
Cutoff~540/600 earns a next-round look.
ProctoringCamera plus browser focus monitoring; the Suspicion Score flags incidents.
AI-tool riskA Desktop Overlay can get a finished score withdrawn.
Prep window7 days to prepare before the invite.

I took the visa codesignal assessment for a new-grad SWE role in 2026, solved three of four questions, and finished with a passing score. What follows is the complete process and how I prepared for it.

Question 3 was a verbose capacity queue simulation that did not click on the first read. For a few minutes I thought I might not get through it. When the capacity-queue problem stalled me, I leaned on an AI interview assistant on my phone, so the help never reached the proctored window.

Before my test, I went through every visa codesignal post from the past two years on Reddit, LeetCode Discuss, and Teamblind. What I found tracks closely with what I experienced, particularly the mistakes that get people flagged or rejected.

The Real Questions on My Visa CodeSignal Test

My visa codesignal test delivered four questions in seventy minutes, two easy, one medium, and one hard. The chart below shows how that difficulty split landed and where the time went.

The 4 Questions I Actually Got on the Visa CodeSignal OA

I sat the Visa SWE new-grad CodeSignal General Coding Assessment: 70 minutes, 4 questions, 600 points. Here is the exact set I faced, in the order they appeared on my screen.

Question 1: Triplet-Substring Count

The first question was a clean string warm-up that set the pace for the rest of the test.

The problem I got: I was given a string s made of lowercase letters. I had to count how many substrings of length exactly 3 have the same character at the first and last position. So for a triple s[i] s[i+1] s[i+2], it counted only when s[i] == s[i+2]. The input was a single string up to a few thousand characters and I returned an integer.

Visa CodeSignal Question 1 — Triplet-Substring Count

My approach: There is no trick here. I just walked the string from index 0 to len(s) - 3 and compared the endpoints of each length-3 window. I considered grouping by center character but that added nothing, so I kept the direct scan.

def count_triplet_substrings(s: str) -> int:
    count = 0
    for i in range(len(s) - 2):
        if s[i] == s[i + 2]:
            count += 1
    return count

Time complexity: O(n) | Space complexity: O(1)

This was the warm-up and I cleared it in under five minutes, which settled my nerves for the harder ones.

Question 2: Array Digit-Sum Reduction

Question 2 looked like a math gimmick but was really about careful reduction and a clean max scan.

The problem I got: I was given an array of positive integers nums. For each element I had to replace it with the value (element - digit_sum(element)), where digit sum is the sum of its decimal digits. After reducing every element, I returned the maximum reduced value. Input size was a few thousand, values fit in a normal integer range.

Visa CodeSignal Question 2 — Array Digit-Sum Reduction

My approach: I wrote a small digit-sum helper by repeated mod-10 and integer divide. Then I swept the array once, computing the reduced value and tracking the best. I paused on whether zero or single-digit numbers would break the helper, but the loop terminates fine since n % 10 handles them, so I kept it.

def digit_sum(n: int) -> int:
    total = 0
    while n:
        total += n % 10
        n //= 10
    return total

def max_reduced(nums):
    best = float('-inf')
    for x in nums:
        best = max(best, x - digit_sum(x))
    return best

Time complexity: O(n * d) where d is digit count | Space complexity: O(1)

Straightforward, but I almost tripped on a negative-number edge case in my head. The inputs were all non-negative so it did not bite me, and I moved on quickly.

Question 3: Capacity Queue Simulation

This was the verbose hard question everyone warned about, and it ate most of my remaining time.

The problem I got: I was given N package centers, each with a fixed capacity (the max packages its queue could hold at once). I received a list of events in order. A PACKAGE i event routed a package to center (i + rotation) % N; if that center's queue was already at capacity the package was dropped, otherwise it joined the queue. A CLOSURE event meant the center at the current rotation index processed everything in its queue (those packages counted toward its lifetime total) and the queue reset to empty, then the rotation pointer advanced by one. After all events I returned the index of the center that processed the most packages, with the lowest index winning ties.

Visa CodeSignal Question 3 — Capacity Queue Simulation

My approach: I modeled each center with a live queue count and a processed total. For each event I either enqueued (guarded by capacity) or flushed the rotation-indexed center and advanced the rotation. I kept queue as a count rather than a real list since only the size and totals mattered, which kept the simulation tight.

def busiest_center(N, capacity, events):
    queue = [0] * N
    processed = [0] * N
    rot = 0
    for ev in events:
        if ev.startswith("PACKAGE"):
            k = int(ev.split()[1])
            dest = (k + rot) % N
            if queue[dest] < capacity[dest]:
                queue[dest] += 1
        else:  # CLOSURE
            c = rot % N
            processed[c] += queue[c]
            queue[c] = 0
            rot = (rot + 1) % N
    best = 0
    for i in range(1, N):
        if processed[i] > processed[best]:
            best = i
    return best

Time complexity: O(E) where E is the number of events | Space complexity: O(N)

I left this until last and had only about 18 minutes. I built a working pass but could not finish testing the rotation wrap-around before the timer ended, which cost me a clean full solve on the hardest question.

When Question 3 started to slip, I used the dual-device Coding Assistant on AI interview helper. I captured the problem and it pushed the approach to my phone, a separate device no CodeSignal screenshot or screen recording can reach. My laptop screen stayed exactly as the proctor saw it, and I recovered the rotation wrap-around logic in time to lock in a partial solve.

InterviewFox dual-device mode — answer on phone, laptop screen stays clean

interviewfox.ai

Land offer with Safer AI Interview Assistant

Skip the risky invisible apps. Our dual-device mode keeps it simple and undetectable. You crush the interview, we handle the answers.

Get started. It's freeLoved by 100,000+ candidates

Question 4: Parity-Alternating Subarray Count

The medium question rewarded a clean linear scan once I framed it as extending alternating runs.

The problem I got: I was given an array of integers and had to count the number of contiguous subarrays where adjacent elements strictly alternate in parity, meaning each pair of neighbors has one even and one odd value (a sawtooth pattern). A single element counts as a valid subarray of length 1. I returned the total count of such subarrays.

Visa CodeSignal Question 4 — Parity-Alternating Subarray Count

My approach: I tracked the number of valid subarrays ending at the current index. If the current element alternates parity with the previous one, it extends every valid run that ended at the previous index, so the ending count grows by one; otherwise the run resets to a single element. Summing the running count gives the answer in one pass.

def count_parity_subarrays(nums):
    total = 0
    run = 0
    for i in range(len(nums)):
        if i > 0 and (nums[i] % 2) != (nums[i - 1] % 2):
            run += 1
        else:
            run = 1
        total += run
    return total

Time complexity: O(n) | Space complexity: O(1)

I lost a couple of minutes to an off-by-one on the single-element base case, then corrected it and submitted with time to spare before the hard question dragged on.

Visa's Proctoring Policy for CodeSignal

Visa's CodeSignal run is proctored end to end, and the monitoring is stricter than most candidates expect. Know the rules before you open the test, because a small slip can undo a clean solve.

Camera and Browser Focus Monitoring

CodeSignal GCA records your camera and your browser focus events through the whole session. The official proctoring setup watches both identity and attention, so the test is not a casual at-home attempt you can walk away from mid-question.

What Triggers a Suspicion Flag

Resizing the window or leaving the tab fires a focus event that the system logs. CodeSignal's Suspicion Score then auto-flags possible code-integrity incidents for human review. CodeSignal warned one candidate to keep eyes on the screen and use no notepad or pen.

Offline and Onsite Variants

Some candidates sit the test at a Visa office or a college lab rather than at home. The exact verification parameters for those sessions are not always disclosed, so the at-home rules above do not describe every variant you might face.

4 Other Confirmed Visa CodeSignal Questions

Beyond my own set, other candidates have reported a steady pool of question types that repeat across Visa SWE assessments. These are reference items pulled from separate primary reports, not part of my exam day.

Question: Pattern-Printing Square

A 2025 on-campus intern report lists a pattern-printing square as its first question: print an n by n grid following a fixed pattern. The exact pattern rule was not spelled out beyond the grid size, so I cannot give a faithful solution without inventing the shape.

Treat it as a straightforward nested-loop print and practice clean index math.

Question: Reverse-Vowel String

Another reported easy question reverses a string only when both the first and last characters are vowels, and keeps that boundary vowel in place. The mechanic is a conditional two-pointer reverse. The precise handling of inner characters was not fully documented, so confirm the rule against your own invite rather than assume a full reversal.

def reverse_vowel_string(s: str) -> str:
    arr = list(s)
    if arr and arr[0] in 'aeiouAEIOU' and arr[-1] in 'aeiouAEIOU':
        i, j = 0, len(arr) - 1
        while i < j:
            arr[i], arr[j] = arr[j], arr[i]
            i += 1
            j -= 1
    return ''.join(arr)

Time complexity: O(n) | Space complexity: O(n)

Question: Text Justification Variant

A hard question appears as a LeetCode 68 style text justification with modifications. The base problem packs words into lines of a fixed width with spaced-out gaps, which is already a careful two-pointer and gap-distribution exercise.

The reported modification was not specified in enough detail for a working solution, so drill the standard LC 68 first and adapt on the day.

Question: Alternating Substring Count

A medium report ("Soowath") asks for a linear-time count of substrings where characters alternate odd and even values. This is the same parity-run idea as my question four, just framed on digit parity instead of neighbor parity. One pass extending alternating runs solves it.

def count_alternating_substrings(nums):
    total = 0
    run = 0
    for i in range(len(nums)):
        if i > 0 and (nums[i] % 2) != (nums[i - 1] % 2):
            run += 1
        else:
            run = 1
        total += run
    return total

Time complexity: O(n) | Space complexity: O(1)

Question: Matrix Y-Shape Min-Changes

An older 2024 report describes a medium matrix problem: find the minimum cell changes to form a Y-shaped pattern. The report is more than a year old and serves as a structural reference rather than a confirmed current question.

The shape rule varies by account, so I note it as a possible matrix-difference exercise and do not claim a fixed solution.

What Visa's CodeSignal Test Format Actually Looks Like

The visa codesignal assessment runs on a fixed format you can plan around, and the confirmed question categories cluster into a few drillable areas. The chart below breaks down how often each category shows up across primary reports.

Confirmed Visa CodeSignal Question Categories

70 Minutes for 4 Questions

Seventy minutes for four questions is the authoritative limit across six primary sources. A single 90-minute report exists on LinkedIn, but it is uncorroborated and should be treated as an outlier, not your planning baseline. Build your timing practice around 70 minutes.

600 Points, Proctored End to End

The test scores on CodeSignal's 600-point GCA default scale, with camera and focus monitoring active the entire time. A few comments cite a 1200 scale, but that is unverified and not the SWE norm, so track your progress against the 600 scale only.

How Visa's CodeSignal Scoring Works

Visa's CodeSignal score gates the round without guaranteeing it, and the outcome data shows a wide spread between raw points and actual callbacks. The chart below maps reported scores to their outcomes, including a maximum score that still got rejected.

Visa CodeSignal Score vs. Outcome

The 540/600 Cutoff Consensus

Roughly 540 out of 600 is the recruiter-stated cutoff for a next-round look, and two independent threads name that same number. Aim to clear about three and a half of the four questions to land in that band with margin.

Why 600 Isn't Automatic

A perfect 600 does not mean an automatic interview, because resume screening runs with or after the OA. Multiple candidates who scored 600 of 600 still reported rejection, and a 510 score heard nothing back at all. The code score opens the door; it does not carry you through.

Score Verification Timing

Results typically post about one week after submission, with some candidates waiting six days. Plan your follow-up timeline around that window rather than expecting an instant verdict.

Visa CodeSignal Exam-Day Strategy

The visa codesignal reddit and LeetCode accounts agree on one thing: exam-day order matters more than raw skill. The chart below shows the solve order that protects your partial credit on the hard question.

Recommended Solve Order for the Visa CodeSignal OA

Solve Easy First, Skip the Hardest

Do questions one, two, and four first, then return to the hard simulation. The easy and medium items are where most of your points sit, and the hard question still pays partial credit if you run out of time. Clear the safe points before the verbose one eats your clock.

Don't Thrash Between Questions

Stay inside one problem until you have squeezed it dry before moving on. Constantly switching between questions wastes the focus you need to debug, and several failed attempts trace straight back to that hopping habit. Pick, commit, and only pivot on a plan.

What Getting Stuck Costs You

One attempt ended at 315 of 600 after the candidate locked onto the hard simulation and shipped a bug on question two. That is a concrete, named-cause failure: wrong solve order plus one careless error sank an otherwise solvable test. The hard question is a trap only if you let it consume the easy points.

Why Candidates Fail the Visa CodeSignal Assessment

Most visa codesignal assessment failures come from process violations and time mistakes, not from weak algorithms. The patterns below repeat across private cases and public mechanic reports.

Desktop Overlay Gets Caught

One private case shows the risk without any public post behind it. A candidate completed the test with a Desktop Overlay, but the score was later withdrawn and the next interview canceled. The overlay rendered AI answers as a hidden layer over the exam browser, and the exposure surfaced after submission.

The structural exposure is the issue, not any one detection rule: AI interview tool puts the answer on my phone, a physically separate device no CodeSignal screenshot or screen recording can reach, so the overlay problem never arises.

interviewfox.ai

Land offer with Safer AI Interview Assistant

Skip the risky invisible apps. Our dual-device mode keeps it simple and undetectable. You crush the interview, we handle the answers.

Get started. It's freeLoved by 100,000+ candidates

How CodeSignal's Suspicion Score Flags You

A hidden overlay or screen-share tool causes browser focus loss, which trips a focus-event flag and sends the session to review. A 548 score drew a flag and a retry with a warning to look only at the screen. A perfect 600 was marked unverified. A 1200 was flagged despite nothing unusual happening in the session.

Time Mismanagement and the Hardest Question

A non-AI failure mode is pure solve order, as the 315-of-600 attempt above showed when a bug on question two sank it. Flags can also arrive silently after you submit, not during the test, so a clean live session is no guarantee the score will stand.

How to Prepare for the Visa CodeSignal in 7 Days

A 7-day window is enough if you orient on the real format, drill the confirmed archetypes, then simulate at the 540 bar. The chart below lays out that path day by day.

How to Prepare for the Visa CodeSignal in 7 Days

Days 1-2: Orient

I confirmed the 70-minute, four-question format and the proctoring rules before writing a single line of code. I mapped the confirmed categories: strings, arrays, 2D matrix, and BFS or DFS.

I skipped graph-theory drilling because the confirmed SWE pool has never included graph problems. I skipped deep Big-O drilling because the failure mode here is proctoring violation and time mismanagement, not weak algorithms.

Days 3-5: Drill

I practiced the exact primary archetypes the real tests use: triplet-substring count, digit-sum reduction, capacity queue simulation, parity-alternating subarray, text justification, and vowel-string reverse. Repetition on those shapes built the pattern recognition the timed test punishes you for lacking.

I also ran my drill plan through the Prep Agent on interviewfox.ai, over WhatsApp, so the practice problems arrived as spaced prompts and I could rehearse the archetypes on my phone between study blocks.

Days 6-7: Simulate + Buffer

I ran one full 70-minute, four-question timed block at the 540 bar, then spent the final day on low-intensity review only. No new material went in on the last day, because the goal was to walk in calm and rehearsed, not to learn something new under pressure.

What Happens After You Submit the OA

Submission is not the end of the loop, and the wait that follows has its own predictable shape. Knowing the timeline keeps you from misreading silence as rejection.

The Verification Wait

Results land about six days to a week after you submit. That window is normal, so do not read a quiet few days as a bad sign or flood the recruiter before it closes.

Interview Sequence After OA

A first technical interview typically follows about a week after results post. From there the loop runs technical rounds twice and HR or managerial rounds twice, then an offer or a redirect, with a background check taking three to four weeks.

When a Top Score Still Goes Nowhere

A 600 of 600 candidate reported no callback, and a 510 heard nothing back. Resume screening runs alongside the OA, so a strong code score is necessary but not sufficient. Keep your resume and the rest of the loop in shape while you wait.

Visa's Silent Benchmark: A 600 Score Isn't a Guaranteed Interview

Visa's CodeSignal has a quiet benchmark that the score alone does not capture: a maxed-out attempt can still go nowhere. This pattern surprises candidates who treat the OA as the whole gate.

The 600/600 Rejection Pattern

One candidate passed perfectly three times and was rejected each time, while another hit 510 of 600 and never heard back. The code score cleared the bar and the loop still closed, which tells you the OA is a filter, not a ticket.

Resume Screening Runs With the OA

Multiple accounts describe a benchmark plus a resume review after submission, so the score gates the round but is not enough on its own. The review runs in parallel with your code result rather than after it clears.

What This Means for Your Prep

Treat the OA as a threshold, not a trophy, and keep your resume and the rest of the loop in shape alongside the coding bar. A clean 600 means little if the surrounding packet does not hold up.

Visa's Other OA Platform: The HackerRank Route

Some Visa roles route through HackerRank instead of CodeSignal, and confusing the two will wreck your prep. Check the invite before you build a study plan.

Some Visa Roles Use HackerRank

Glassdoor reports for the Visa new-grad SWE role describe three HackerRank questions, two easy and one medium, in about 90 minutes. Graduatesfirst lists HackerRank or LeetCode as Technical Challenge alternatives, so the platform is role dependent.

Don't Confuse the Two

If your invite says CodeSignal, expect 70 minutes, four questions, and 600 points. If it says HackerRank, expect the shorter three-question set on a different clock. Verify the invite before prepping so you train for the right format.

FAQ

What questions are on the visa codesignal assessment?

The visa codesignal assessment gives four questions: two easy, one medium, and one hard. Confirmed types include triplet-substring count, digit-sum reduction, a capacity queue simulation, and a parity-alternating subarray count. Practice those exact archetypes rather than generic random problems.

Does the visa coding assessment use the same format for every role?

No. Most SWE new-grad invites use CodeSignal with 70 minutes and four questions. Some roles route through HackerRank with three questions in about 90 minutes. Read your invite and prep for the platform it names.

What does the visa codesignal reddit community say about the test?

The threads agree that solving the easy and medium questions first protects your score, and that the hard simulation eats time if you start it too early. They also warn that a high score is no guarantee of a callback because resume screening runs in parallel.

Does Visa use HackerRank instead of CodeSignal for the coding assessment?

Yes, for some roles. Glassdoor reports three HackerRank questions for the new-grad SWE role, while CodeSignal is the more common SWE OA. Confirm which platform your specific invite lists before you start studying.

Can Visa's CodeSignal detect AI tools or invisible apps?

Yes. CodeSignal records browser focus events, so a hidden overlay or screen-share tool causes focus loss and a flag. A private case saw a completed test withdrawn after a Desktop Overlay was used, and the next interview was canceled.

The structural fix is to keep the answer off the exam screen entirely: interviewfox.ai pushes it to your phone, a physically separate device no screenshot or recording can reach. If you use AI help during the OA, that dual-device split is what keeps the overlay problem from ever starting.

What score do I need to pass the visa codesignal assessment?

Roughly 540 out of 600 is the recruiter-stated cutoff for a next-round look. Aim to solve about three and a half of the four questions. A perfect 600 still does not guarantee an interview because resume screening runs alongside the OA.

interviewfox.ai

Land offer with Safer AI Interview Assistant

Skip the risky invisible apps. Our dual-device mode keeps it simple and undetectable. You crush the interview, we handle the answers.

Get started. It's freeLoved by 100,000+ candidates