Competitive and Collaborative Programming Club

Hacker Devils is a Fulton Schools student organization that prepares Sun Devils for technical interviews and online assessments, while teaching the programming fundamentals that matter in industry. There’s free pizza at every meeting.

Code-A-Thon

A coding competition on HackerRank, in person, with a chance to win GTA 6.

When
Sunday, November 22, 1 to 4 PM
Where
PSF 173, in person
Format
Coding competition on HackerRank
Tracks
Beginner and advanced

Learn and prepare

Easy and Medium LeetCode sections take turns, with system design alongside Easy. GPU programming is coming soon.

LeetCode sections

Easy and Medium, on alternating Wednesdays

Officers bring a problem set modeled on real online assessments, and every meeting ends with a walkthrough of solutions, complexity and edge cases. Start with Easy if interview problems are new to you.

  • Arrays, strings and hashing
  • Two pointers and sliding window
  • Trees, graphs and BFS/DFS
  • Dynamic programming patterns

Return the indices of the two numbers in nums that add up to target. Exactly one answer exists.

def two_sum(nums, target):
    seen = {}  # value -> index
    for i, n in enumerate(nums):
        if target - n in seen:
            return [seen[target - n], i]
        seen[n] = i
  • [2,7,11,15], 9 returns [0, 1]
  • [3,2,4], 6 returns [1, 2]
  • [3,3], 6 returns [0, 1]

O(n) time, O(n) space

ClientLoad bal.API 1API 2CacheDatabase

System design

Every other Wednesday, alongside the Easy section

We take one real system, such as a URL shortener, a chat app or a news feed, and design it end to end with a repeatable interview framework.

  • Requirements and estimation
  • APIs and data models
  • Caching, queues and load balancing
  • Trade-off discussions
__global__ void add(float *a, float *b, float *c) {
  int i = blockIdx.x * blockDim.x + threadIdx.x;
  c[i] = a[i] + b[i];
}

GPU programming

Coming soon

Sessions will start with your first CUDA kernel and work up to shared-memory tiling and the optimizations behind modern machine learning.

  • Threads, blocks and grids
  • The memory hierarchy
  • Coalescing and shared memory
  • Profiling kernels

One hour, every Wednesday

Two weeks alternate through the semester. Classes teach you how to program, and these hours are practice for the part interviews actually test.

One week

  • Easy sectionWLSN 114
  • System designWLSN 253

Same hour, so pick one.

The next week

  • Medium sectionWLSN 114

Then the rotation repeats.

Time
Wednesdays, 6 to 7 PM Arizona time
Place
Wilson Hall, Tempe campus
Bring
A laptop and any language you like
Food
Free pizza, every meeting
  1. Problem drop

    Grab a slice while officers introduce the night’s problem or design prompt.

  2. Solve together

    Work in small groups, with help when you’re stuck.

  3. Review

    Walk through solutions, complexity and edge cases.

There’s free pizza every meeting

Grab a slice, then grab a problem.

Find this week’s room

On the calendar

Add a session to your calendar and it repeats for the rest of the semester.

Read event recaps and download slides

Show up Wednesday

Built for tech majors, open to every major. No experience required.

  1. Join the Discord

    Announcements, weekly problems and room details.

  2. Register on Sun Devil Central

    This makes you an official member of the org.

  3. Come to a meeting

    6 to 7 PM on the Tempe campus. Bring a laptop. The pizza is on us.