SHPE Convention 2026

Diego Montoya

SWE Resume Projects — Study Guide. Know why you chose each technology. Be able to defend it with your life.

5
Projects
30
Interview Qs
14
Companies
Defense Prep

Study Method

  1. Read the Architecture section for each project
  2. Memorize the "Why" tables — every tech choice has a reason
  3. Practice the CRUD + API flow for each project
  4. Know your security decisions cold
  5. Be ready for "Why X over Y?" comparisons

Core Principle

"BE ABLE TO DEFEND IT WITH YOUR LIFE. They will drill you as to why you chose a certain library or framework. If you can tell me why you chose MongoDB over Postgres then you're good."

Priority Companies (Pure SWE)

Tesla Capital One Datadog Goldman Sachs Morgan Stanley WWT

Also Researching

Texas Instruments Micron Technology GM Ford Cummins Eaton Cadence KLA Lam Research

Project Overview

Click any project to expand its architecture, tech stack, and design decisions.

01 Aidvise — AI Academic Advisor Next.js 15 Appwrite Puter AI
AttributeDetail
FrameworkNext.js 15 React 19 TypeScript
StylingTailwind CSS v4, local fonts (BBHSansHegarty, StackSansNotch)
Backend / AuthAppwrite (Account, Databases, ID, Permissions) — nyc.cloud.appwrite.io
AI / LLMPuter AI SDK — DeepSeek v4 Flash model, streaming responses
Markdownreact-markdown + remark-gfm + rehype-highlight
DeploymentVercel
Data StorageAppwrite Cloud (users_, conversations, tasks collections)
Auth ModelEmail/password sessions via Appwrite Account API
Key FeatureNo custom backend server — all API calls go directly from browser to Appwrite/Puter
PagesLanding, Login, Register, Launch (onboarding), Dashboard (AI chat), History, Tasks, Calendar, Settings, FAQ, About, Terms, Privacy, Explore
02 NoteHunt — Secure Notebook PWA Next.js 15 MongoDB PWA
AttributeDetail
FrameworkNext.js 15 (App Router, Route Handlers)
Authbcryptjs + JWT in httpOnly, SameSite=Lax, Secure cookie
DataMongoDB via db.0102006.xyz REST proxy (server-side only)
DesignMinimalist Monochrome — hand-rolled CSS with design tokens
FontsPlayfair Display / Source Serif 4 / JetBrains Mono via next/font (self-hosted)
PWAmanifest + apple-touch-icon + service worker (installable, offline shell)
DeploymentVercel
SecurityCSP with nonces, IDOR defense, rate limiting, constant-time login, API key system
MCP ServerStdio MCP server for AI agents (Claude Desktop, Cursor)
03 Quiz App — Note-Taking Quiz Platform Astro 7 MongoDB VAPID
AttributeDetail
FrameworkAstro 7 (server output) + @astrojs/node standalone
Authbcryptjs + JWT in httpOnly SameSite=Lax cookies, DB-backed rate limiting
DataMongoDB 4.4 via REST proxy (db.0102006.xyz)
Pushweb-push (VAPID), per-quiz study reminders via idempotent scheduler heartbeat
AIAPI keys (hashed at rest, revocable, capped at 5) + stdio MCP server
DesignMinimalist Monochrome — pure black/white, Playfair Display serif, zero border-radius
DeploymentVercel (@astrojs/vercel adapter)
Question TypesMultiple choice (single/multi), open, linking/matching, true-false, fill-the-blank, sequence
Study ModesReview (instant feedback + score) and Flashcards (flip cards)
04 Giveaway Roulette Next.js 16 framer-motion canvas-confetti
AttributeDetail
FrameworkNext.js 16 (App Router) + React 19
StylingTailwind CSS v4, clsx, tailwind-merge
Animationsframer-motion (layout animations, confetti)
Specialcanvas-confetti for celebration effects
DeploymentVercel (presumed)
Key FeatureInteractive giveaway/roulette mechanic with animated results
05 Rate-It (Search It) — Entertainment Search Platform Astro 5 TMDB RAWG
AttributeDetail
FrameworkAstro 5 (SSR) + @astrojs/vercel serverless
StylingTailwind CSS v4 via @tailwindcss/vite
Data SourcesTMDB API (movies, TV, anime), RAWG API (games), Google Books API, Open Library, Deezer API
Content SafetyServer-side filtering — adult flags, rating checks, genre/term blocklists
CachingIn-memory cache (60s–10min TTL) to respect rate limits
DeploymentVercel (@astrojs/vercel serverless adapter)
CategoriesMovies, Books, TV Series, Music, Anime, Games
API KeysTMDB_API_KEY, RAWG_API_KEY (required); GOOGLE_BOOKS_API_KEY (optional)

Aidvise — AI Academic Advisor

Architecture

BROWSER (Client)

Next.js 15 React 19 TypeScript

App Router Tailwind CSS v4

↓ HTTP requests

APPCLOUD

nyc.cloud.appwrite.io/v1

Auth DB Permissions

Collections: users_, conversations, tasks

PUTER AI SDK

puter.ai.chat()

Streaming Client-side

Model: DeepSeek v4 Flash

↓ Streaming response

REACT-MARKDOWN

remark-gfm rehype-highlight

Renders AI responses with tables, code highlighting

Request Flow

1
User types message → React state updates, message added to UI immediately
2
System prompt assembled → SYSTEM_PROMPT + user profile context (college, major, classification, graduation) + task context
3
puter.ai.chat() called → model: "deepseek/deepseek-v4-flash", stream: true
4
Streaming response → AsyncIterable accumulated chunk-by-chunk into React state
5
Messages persisted → Both user + assistant messages saved to Appwrite conversations collection (max 15 per user)
6
UI re-renders → ReactMarkdown renders assistant response with GFM tables/strikethrough + syntax highlighting

Key Design Decisions

CRUD Operations

EntityCreateReadUpdateDelete
ConversationssaveConversations() — upserts by user IDloadConversations() — gets by user IDsaveConversations() — updates listsaveConversations() with filtered list
TasksaddTask() — creates with userId scopeloadTasks() — lists, filters by userId— (delete + recreate)deleteTask() — deletes by doc ID
User ProfilecreateDocument() in users_ collectiongetDocument() by user IDupdateDocument() by user IDdeleteDocument() + account.delete()
🎯 Interview Trap: "Why didn't you use REST API for the AI calls?"
Answer: "Puter.js provides a client-side SDK that handles the AI API call securely without exposing API keys. The SDK also supports streaming natively, which gives real-time chat feedback. If I needed a custom backend, I'd use Express with a server-side proxy, but for this project, the client-to-AI direct path is the right architectural choice because Puter handles authentication and key management."

Test Your Knowledge

NoteHunt — Secure Notebook PWA

Architecture

BROWSER

Next.js 15 React Service Worker

PWA: installable, offline shell, push handlers

AUTH LAYER

JWT cookie API key

httpOnly + SameSite=Lax + Secure

↓ All requests pass through auth middleware

ROUTE HANDLERS

/api/auth/* · /api/notes/* · /api/keys/* · /api/push/*

Session cookie OR API key (Bearer / x-api-key)

↓ Server-side only — API key never reaches browser

DB PROXY

db.0102006.xyz

MongoDB REST API

Defensive envelope unwrap · IDOR defense · No _id hex filtering

SECURITY LAYERS

CSP nonces Rate limiting Constant-time login

IDOR defense API key hashing Security headers

Auth & Security Architecture

LayerMechanismPurpose
TransportHTTPS (Vercel provides automatically)Encrypts all data in transit
SessionJWT in __Host-notehunt_session cookiehttpOnly + SameSite=Lax + Secure kills CSRF by construction
LoginConstant-time comparison (dummy bcrypt hash for unknown emails)Prevents user enumeration by timing
Rate LimitingDB-backed (auth_attempts collection): 10 failed logins/email/15min, 20 registrations/IP/dayIn-memory counters would be per-instance on serverless and trivially bypassed
IDOR DefenseEvery read scoped by ownerId filter; every update/delete re-verifies ownership by IDCross-user access returns 404 (never 403), so nothing leaks
API Keysnh_ prefix + 32 bytes base64url (256 bits), stored as SHA-256 hash onlyPlaintext shown once at creation; revocable; capped at 5 per account
CSPNonce-based script-src, no 'unsafe-inline' for scriptsPrevents XSS via inline scripts
Security HeadersCSP, X-Frame-Options: DENY, nosniff, Referrer-Policy, Permissions-PolicyDefense in depth against clickjacking, MIME sniffing, etc.

Key Design Decisions

CRUD Operations

EndpointMethodPurposeAuth
/api/auth/registerPOSTCreate account + session cookieNone
/api/auth/loginPOSTVerify + session cookieNone (constant-time)
/api/auth/logoutPOSTClear session cookieSession
/api/auth/meGETSession or API key checkSession OR API key
/api/notesGETList own notes (metadata only); ?q= search; ?limit=Session OR API key
/api/notesPOSTCreate noteSession
/api/notes/:idGET/PUT/DELETEOpen/autosave/delete (ownership-checked)Session OR API key
/api/keysGET/POSTList/mint API key (session only)Session only
/api/keys/:idDELETERevoke key (session only)Session only
🎯 Interview Trap: "Why MongoDB instead of PostgreSQL?"
Answer: "I chose MongoDB via a REST proxy because it eliminates the need to host and manage a database server. The proxy handles connection pooling, security, and scaling. MongoDB's document model fits our note-taking data structure naturally — each note is a flexible document with fields like title, body, tags, and timestamps. PostgreSQL would require a schema migration pipeline and a running database instance, which adds operational complexity for a project that should focus on the application logic, not infrastructure."
🎯 Interview Trap: "Why not store API keys in localStorage?"
Answer: "API keys are stored as SHA-256 hashes in the database — the plaintext is never persisted. When a key is created, the plaintext is shown exactly once to the user, then discarded. This means even if the database is compromised, attackers can't reverse the hashes to get usable keys. The keys are also capped at 5 per account and revocable instantly."

Test Your Knowledge

Quiz App — Note-Taking Quiz Platform

Architecture

BROWSER

Astro 7 React Service Worker

SSR-first · Island architecture · PWA

AUTH LAYER

bcryptjs JWT cookie

Constant-time login · DB rate limiting

↓ Server-side rendering — API keys never reach browser

ROUTE HANDLERS (SSR)

/api/auth/* · /api/quizzes/* · /api/keys/* · /api/push/*

/api/scheduler/* · /api/agent/* · /api/mcp.ts

DB PROXY

db.0102006.xyz

MongoDB 4.4 REST

Defensive envelope unwrap · ObjectId trap defense · IDOR on writes

EXTERNAL APIS

TMDB RAWG Google Books Deezer Open Library

All server-side · Cached with TTL · Retry with backoff

Key Design Decisions

CRUD Operations

EntityCreateReadUpdateDelete
QuizzesPOST /api/quizzesGET /api/quizzes (list), GET /api/quizzes/[id] (detail)PUT /api/quizzes/[id]DELETE /api/quizzes/[id]
FoldersPOST /api/foldersGET /api/foldersPUT /api/folders/[id]DELETE /api/folders/[id]
TagsAuto-created on quiz saveGET /api/tags (aggregated)
ResponsesPOST /api/quizzes/[id]/responsesGET /api/quizzes/[id]/responses (owner only)
SharesPOST /api/quizzes/[id]/share {email}GET /api/quizzes/[id] (shared users)PUT /api/quizzes/[id]/visibility
API KeysPOST /api/keysGET /api/keysDELETE /api/keys/[id] (revoke)
Push SubscriptionsPOST /api/push/subscribeGET /api/push/statusPUT /api/push/subscribeDELETE /api/push/subscribe

Test Your Knowledge

Giveaway Roulette

Architecture

BROWSER

Next.js 16 React 19

STYLING

Tailwind CSS v4 clsx tailwind-merge

ANIMATIONS

framer-motion (layout, gestures, SSR)

canvas-confetti (celebration FX)

GIVEAWAY LOGIC

Random selection algorithm · Winner determination · Animation triggers · Mobile responsive

Key Design Decisions

What to Study

  • Random selection algorithm — how does the app pick a winner? Is it truly random or seeded?
  • State management — how does the app track participants, entries, and winners?
  • Animation triggers — how does framer-motion animate the winner reveal?
  • Confetti timing — when does canvas-confetti fire and how is it configured?
  • Mobile responsiveness — how does the layout adapt to different screen sizes?

Test Your Knowledge

Rate-It (Search It) — Entertainment Search Platform

Architecture

BROWSER

Astro 5 React (islands) Tailwind CSS v4

↓ All API calls happen here — server-side only

API UTILS (server-side)

tmdbKey() rawgKey() googleBooksKey()

cachedFetch() with retry + in-memory cache · contentFilter (family-safe)

ROUTE HANDLERS (SSR)

/movies · /books · /tv-series · /music · /anime · /games

/actors/[id] · /authors/[id] · /categories

EXTERNAL APIS (server-side only)

TMDB → movies, TV, anime · RAWG → games

Google Books → books (optional key) · Open Library → books (free fallback)

Deezer → music (no key, image proxy via wsrv.nl)

Key Design Decisions

Content Safety Architecture

The rate-it project has a comprehensive content filtering system that operates at multiple layers:

  1. TMDB adult flag — movies with adult=true are blocked at the API call level
  2. isTextSafe() — keyword-based filtering on titles, descriptions, and overviews (blocks: xxx, adult, porn, sex, erotic, nude, nsfw, hentai, etc.)
  3. filterMovieContent() — genre-based filtering, rating thresholds, and suspicious rating detection
  4. isMovieSafe() — checks adult genres, X/NC-17 certifications
  5. isFamilyFriendly() — most restrictive: only G/PG/PG-13 ratings, blocks Horror/Thriller/War genres
  6. blocklistGenres — for TV/anime/games where per-item rating data may be unavailable

Test Your Knowledge

Interview Prep — The 30 Core Questions

Click any question to reveal the answer. Practice giving a 30–60 second response for each.

Q1. Why did you choose Next.js over other frameworks?

Answer: App Router for file-based routing, React 19 features, Vercel deployment synergy, SSR/SSG options. Next.js gives me the best DX for React-focused projects.

Q2. Why did you choose Astro for some projects?

Answer: SSR-first, island architecture, zero JavaScript by default, perfect for content-heavy sites with multiple data sources. Astro's islands mean only interactive components hydrate — less JavaScript sent to the browser.

Q3. Why no custom backend server for Aidvise?

Answer: Appwrite provides auth + database as a service; Puter provides AI as a service. Adding a custom backend would be unnecessary complexity for a student project.

Q4. How does your app handle authentication?

Answer: Appwrite sessions / JWT in httpOnly SameSite=Lax cookies / bcrypt + JWT. Each project uses the auth model best suited to its needs.

Q5. Why did you choose MongoDB over PostgreSQL?

Answer: Document model fits flexible note/quiz data; REST proxy eliminates DB hosting; no schema migrations needed. PostgreSQL would require a running database instance and schema migration pipeline.

Q6. How does your app handle data isolation between users?

Answer: Permission-based (Appwrite), ownerId filtering (MongoDB), IDOR re-check on writes. Every write operation re-verifies ownership by ID — defense in depth.

Q7. What is your app's deployment strategy?

Answer: Vercel for all projects — zero-config, automatic SSL, CDN, preview deployments. Git-based deployment with environment-specific configs.

Tech Stack Cheat Sheet

Click any row to expand details on why each technology was chosen over alternatives.

Next.js 15/16 — Aidvise, NoteHunt, Giveaway
Why ChosenKey AlternativeWhy Not That
App Router, React 19, Vercel synergy, SSR/SSG, file-based routingAstro, Express + ReactAstro is better for content sites; Express adds backend complexity
Astro 5/7 — Quiz App, Rate-It
Why ChosenKey AlternativeWhy Not That
SSR-first, island architecture, zero JS by default, multi-framework supportNext.js, NuxtNext.js forces React; Astro's islands are more efficient for content-heavy pages
React 19 — All Next.js projects
Why ChosenKey AlternativeWhy Not That
Latest features, concurrent rendering, large ecosystemVue, Svelte, SolidReact is the industry standard with the largest job market
TypeScript — All projects
Why ChosenKey AlternativeWhy Not That
Type safety, better DX, catches bugs at compile timeJavaScript, FlowTypeScript is the modern standard for production code
Tailwind CSS v4 — All projects
Why ChosenKey AlternativeWhy Not That
Utility-first CSS, design tokens, rapid prototyping, no CSS files to manageCSS Modules, Styled Components, plain CSSTailwind provides consistent, maintainable styling at scale
Appwrite — Aidvise
Why ChosenKey AlternativeWhy Not That
All-in-one backend: auth, DB, storage, permissions. No custom server neededFirebase, Supabase, custom Node + MongoDBFirebase is Google-locked; Supabase is Postgres-only; custom server adds complexity
MongoDB (via REST proxy) — NoteHunt, Quiz App
Why ChosenKey AlternativeWhy Not That
Document model fits flexible data, no DB hosting needed, server-side onlyPostgreSQL, Firebase Firestore, SQLitePostgreSQL requires hosting; Firestore is Google-locked; SQLite doesn't scale for multi-user
bcryptjs — NoteHunt, Quiz App
Why ChosenKey AlternativeWhy Not That
Industry-standard password hashing, constant-time comparison, salt built-inargon2, scrypt, plain text (never!)bcrypt is the proven standard; argon2 is newer but bcrypt is battle-tested
jsonwebtoken (JWT) — NoteHunt, Quiz App
Why ChosenKey AlternativeWhy Not That
Stateless auth, works with httpOnly cookies, no server-side session store neededSession cookies (server-side), OAuthJWT + httpOnly cookies is the modern standard for SPAs; server-side sessions don't scale
Puter AI SDK — Aidvise
Why ChosenKey AlternativeWhy Not That
Client-side AI, no API key exposure, streaming support, model-agnosticOpenAI SDK (backend proxy), custom LLM integrationOpenAI SDK in client-side code exposes API keys; Puter handles this securely
Vercel — All projects
Why ChosenKey AlternativeWhy Not That
Zero-config Next.js/Astro deployment, automatic SSL, CDN, preview deploymentsDocker, self-hosted, Netlify, RailwayVercel is the optimal platform for these frameworks; Docker adds operational burden
framer-motion — Giveaway
Why ChosenKey AlternativeWhy Not That
Production-ready React animation library, gesture support, SSR compatibleCSS animations, GSAP, React Springframer-motion has the best DX and performance for React animation
canvas-confetti — Giveaway
Why ChosenKey AlternativeWhy Not That
Lightweight, zero-dependency confetti animation libraryCustom canvas, LottiePurpose-built for confetti, tiny bundle size, easy to trigger
web-push (VAPID) — Quiz App
Why ChosenKey AlternativeWhy Not That
Standard Web Push API with VAPID keys — enables per-quiz study remindersFirebase Cloud Messaging, email remindersFCM requires Google services; email is less immediate; Web Push works natively in browsers
jose — Quiz App
Why ChosenKey AlternativeWhy Not That
Lightweight JWT/JWS/JWE library, zero dependencies, TypeScript-firstjsonwebtoken, Auth0jose is more modern and has better TypeScript support

Company Research

SHPE Convention 2026 — Target companies and what to emphasize in conversations.

🎯 Day 1 Strategy — Pure Software Roles (Priority Order):
Tesla → Capital One → Datadog → Goldman Sachs / Morgan Stanley → World Wide Technology. These are your primary targets for software developer positions. Research each company's engineering blog and recent tech announcements before the convention.
PRIORITY 01

🚗 Tesla — Software / Autopilot Apps

Pure SWE Target
Key TechPython, C++, JavaScript/TypeScript, React, Node.js, AWS, TensorFlow, autonomous driving stacks
What to EmphasizeFull-stack skills, AI/ML awareness, performance optimization, real-time systems
Roles to TargetSoftware Engineer, Frontend Engineer, Full-Stack Engineer, AI/ML Engineer
Interview FocusSystem design, coding challenges, AI/autonomy knowledge, Tesla's mission alignment
Why Diego FitsAidvise demonstrates AI integration skills; NoteHunt shows full-stack security architecture; Rate-It shows multi-API orchestration
PRIORITY 02

💳 Capital One — Pure SWE Recruiter

Highest Volume SWE Recruiter
Key TechJava, Python, JavaScript/TypeScript, React, Node.js, AWS, microservices, Spring Boot
What to EmphasizeFull-stack development, cloud infrastructure, microservices, scalable systems
Roles to TargetSoftware Engineer, Full-Stack Engineer, Cloud Engineer, Backend Engineer
Interview FocusCoding challenges, system design, Java/Python proficiency, cloud platforms
Why Diego FitsNoteHunt demonstrates secure auth architecture; Quiz App shows full-stack with multiple data sources; all projects show production-grade patterns
PRIORITY 03

📊 Datadog — High-Tech Software

Full-Stack / AI Stack Fit
Key TechGo, Python, JavaScript/TypeScript, React, Node.js, AWS, Kafka, Docker, Kubernetes
What to EmphasizeFull-stack development, distributed systems, observability, cloud-native architecture
Roles to TargetSoftware Engineer, Full-Stack Engineer, Backend Engineer, Platform Engineer
Interview FocusSystem design, coding (Go/Python/JS), distributed systems concepts, API design
Why Diego FitsRate-It demonstrates multi-API orchestration; Aidvise shows real-time streaming; NoteHunt shows production security patterns
PRIORITY 04

🏦 Goldman Sachs — FinTech SWE

FinTech Software Developer
Key TechJava, Python, C++, JavaScript/TypeScript, React, Spring Boot, microservices, AWS
What to EmphasizeFull-stack development, Java/Python proficiency, system design, financial systems awareness
Roles to TargetSoftware Engineer, Full-Stack Engineer, Backend Engineer, Quant Developer
Interview FocusCoding challenges (Java/Python), system design, algorithms, financial domain knowledge
Why Diego FitsNoteHunt shows secure auth and data isolation; Quiz App shows complex state management; all projects demonstrate production-grade code
PRIORITY 04B

🏛️ Morgan Stanley — FinTech SWE

FinTech Software Developer
Key TechJava, Python, JavaScript/TypeScript, React, Spring Boot, AWS, microservices
What to EmphasizeFull-stack development, Java/Python, cloud platforms, scalable systems
Roles to TargetSoftware Engineer, Full-Stack Engineer, Cloud Engineer, Data Engineer
Interview FocusCoding challenges, system design, Java/Python proficiency, cloud platforms
Why Diego FitsAidvise demonstrates AI integration; NoteHunt shows security architecture; Rate-It shows multi-source data aggregation
PRIORITY 05

🌐 World Wide Technology — Pure SWE Backup

Quick-Win Backup
Key TechJava, Python, JavaScript/TypeScript, React, Node.js, AWS, Azure, microservices
What to EmphasizeFull-stack development, cloud platforms, consulting mindset, diverse tech exposure
Roles to TargetSoftware Engineer, Full-Stack Engineer, Cloud Engineer, Solutions Engineer
Interview FocusCoding challenges, system design, cloud platforms, problem-solving
Why Diego FitsAll 5 projects demonstrate diverse tech stacks and full-stack capability; WWT values breadth and adaptability

Additional Companies — Hardware/Engineering Roles

These companies also attend SHPE and have software engineering roles, though they lean more toward hardware/embedded. Keep them as backup options.

06

🔧 Texas Instruments (TI)

Semiconductors · Embedded Systems
Key TechC/C++, Python, embedded C, RTOS, MATLAB, Verilog/VHDL, PCB design
What to EmphasizeLow-level programming, hardware-software interface, embedded systems, signal processing
Roles to TargetEmbedded Software Engineer, Firmware Engineer, Software Engineer (Applications)
Interview FocusC/C++ coding, embedded systems concepts, hardware understanding, problem-solving
07

💾 Micron Technology

Memory · Storage Semiconductors
Key TechC/C++, Python, Verilog, FPGA design, memory architectures, Linux
What to EmphasizeHardware-software co-design, memory systems, performance optimization, debugging
Roles to TargetDesign Engineer, Software Engineer, Applications Engineer, Validation Engineer
Interview FocusDigital design, memory architectures, C/C++ coding, Linux proficiency
08

🚙 General Motors (GM)

Automotive · EVs · Autonomous Driving
Key TechC/C++, Python, Java, JavaScript/TypeScript, React, AWS, Azure, ROS, AUTOSAR
What to EmphasizeFull-stack development, automotive software, cloud infrastructure, AI/ML for autonomous driving
Roles to TargetSoftware Engineer, Embedded Software Engineer, Cloud Engineer, AI Engineer
Interview FocusSystem design, coding, automotive software knowledge, cloud platforms
09

🚗 Ford Motor Company

Automotive · EVs · Connected Cars
Key TechC/C++, Python, Java, JavaScript/TypeScript, React, AWS, Azure, Android Automotive
What to EmphasizeFull-stack skills, connected car technology, mobile development, cloud platforms
Roles to TargetSoftware Engineer, Mobile Engineer, Cloud Engineer, Data Engineer
Interview FocusCoding, system design, mobile development, cloud/connected car tech
10

⚙️ Cummins, Inc.

Engines · Power Generation · Hydrogen
Key TechC/C++, Python, Java, MATLAB, Simulink, PLC programming, cloud/IoT
What to EmphasizeEngineering software, IoT, data analytics, simulation tools, full-stack for industrial apps
Roles to TargetSoftware Engineer, Embedded Engineer, Data Engineer, Applications Engineer
Interview FocusC/C++ coding, engineering domain knowledge, IoT/data, problem-solving
11

⚡ Eaton

Power Management · Electrical Components
Key TechC/C++, Python, Java, MATLAB, PLC programming, cloud/IoT, CAD
What to EmphasizeEmbedded systems, IoT, power electronics software, full-stack for industrial applications
Roles to TargetSoftware Engineer, Embedded Engineer, Applications Engineer, Data Engineer
Interview FocusC/C++ coding, embedded systems, IoT, engineering domain knowledge
12

🎵 Cadence Design Systems

EDA · Semiconductor IP
Key TechC/C++, Python, Perl, Tcl, Verilog/VHDL, MATLAB, Linux
What to EmphasizeEDA tools, digital/analog design, scripting, algorithm development, Python automation
Roles to TargetSoftware Engineer (EDA), Applications Engineer, Design Engineer, Python Developer
Interview FocusC/C++ coding, Python, EDA concepts, digital design fundamentals, algorithm skills
13

🔬 KLA Corporation

Semiconductor Inspection · Metrology
Key TechC/C++, Python, MATLAB, image processing, machine learning, Linux
What to EmphasizeImage processing, ML/AI, C/C++ performance, data analysis, scientific computing
Roles to TargetSoftware Engineer, Applications Engineer, Data Scientist, Imaging Engineer
Interview FocusC/C++ coding, Python, image processing concepts, ML basics, problem-solving
14

🔧 Lam Research

Semiconductor Equipment · Etching · Deposition
Key TechC/C++, Python, MATLAB, PLC, image processing, Linux, real-time systems
What to EmphasizeEmbedded systems, real-time software, image processing, Python automation, hardware-software interface
Roles to TargetSoftware Engineer, Embedded Engineer, Applications Engineer, Validation Engineer
Interview FocusC/C++ coding, embedded systems, image processing, Python, real-time concepts

Architecture Defense Phrases

For every project, you should be able to answer these 5 questions in under 30 seconds each:
#QuestionYour Answer Template
1Why did you choose this framework? "I chose [framework] because [specific reason: ecosystem, performance, deployment, DX]. For example, Next.js provides the App Router which gives me file-based routing and server components out of the box, and Vercel deployment is zero-config."
2Why this database/storage? "I chose [database] because [specific reason: document model, serverless, no hosting needed]. For NoteHunt, MongoDB via a REST proxy means I don't need to manage database infrastructure — the proxy handles connection pooling and security."
3How does authentication work? "I use [auth method] which [specific mechanism]. For NoteHunt, JWT in an httpOnly SameSite=Lax cookie means the token can't be accessed by JavaScript (XSS protection) and is only sent on same-site requests (CSRF protection). Logout clears the cookie via the response API."
4How do you handle security? "I implemented [security measure] because [specific threat]. For example, DB-backed rate limiting prevents brute-force attacks even on serverless where in-memory counters would be per-instance and trivially bypassed. Constant-time login prevents user enumeration by timing."
5What would you improve? "If I had more time, I would [specific improvement: add tests, TypeScript strict mode, better error boundaries, more granular caching, CI/CD pipeline]. The project is solid but there's always room for engineering excellence."

Common "Why X over Y?" Questions

QuestionAnswer
Why React over Vue/Svelte?"React has the largest ecosystem, the most job market demand, and React 19's concurrent features are industry-leading. My portfolio is React-focused which shows depth over breadth."
Why Next.js over Astro?"Next.js is the best choice for interactive, data-driven applications like Aidvise and NoteHunt where real-time chat and authentication are core features. Astro is better for content-heavy, mostly-static sites like Rate-It where the primary function is browsing and searching."
Why Tailwind over CSS Modules?"Tailwind's utility-first approach lets me build consistent designs rapidly without writing custom CSS. The design tokens ensure consistency across all projects, and the responsive utilities make mobile-first design trivial."
Why MongoDB over PostgreSQL?"MongoDB's document model fits our flexible, schema-less data (notes, quizzes, tasks). The REST proxy eliminates database hosting. PostgreSQL would require schema migrations and a running database instance, adding operational complexity."
Why Vercel over AWS/self-hosted?"Vercel provides zero-config deployment for Next.js and Astro, automatic SSL, global CDN, and preview deployments for PRs. Self-hosting would require DevOps overhead that doesn't align with my goal of building applications, not infrastructure."
Why bcrypt over argon2?"bcrypt is the battle-tested industry standard for password hashing. It's built into Node.js ecosystem, has constant-time comparison built-in, and is resistant to GPU-based attacks. argon2 is newer and has theoretical advantages but bcrypt is proven in production at scale."
Why JWT over server-side sessions?"JWT is stateless — no server-side session store needed. This scales horizontally without shared state. Combined with httpOnly cookies, it provides secure authentication without the complexity of a session database."
Why a REST proxy for MongoDB?"A REST proxy means the database API key never reaches the browser. All database calls go through the server, which enforces authentication and authorization. Direct MongoDB drivers in the browser would expose credentials and bypass security controls."

Final Tips for SHPE Convention 2026

  1. Be honest about what you built and what you didn't. Interviewers respect honesty more than bluffing.
  2. Practice the "5 Whys" for every tech choice. If you say "I used MongoDB," be ready for "Why MongoDB?" → "Why not PostgreSQL?" → "Why not Firebase?" → etc.
  3. Bring a laptop with your projects deployed. Have Vercel preview links ready. Let recruiters see your work live.
  4. Prepare a 60-second pitch for each project: what it does, what tech stack it uses, and one interesting technical challenge you solved.
  5. Network beyond the companies you're targeting. Talk to other students, alumni, and recruiters from companies you haven't considered.
  6. Research each company's recent news before the convention. Know their products, recent launches, and engineering blog posts.
  7. Dress professionally but comfortably. Business casual is the standard for tech conventions.
  8. Bring plenty of resumes and a digital version on your phone.
  9. Follow up within 24 hours of meeting recruiters — send a brief email referencing your conversation.
  10. Remember: the convention is a two-way street. You're evaluating them as much as they're evaluating you. Ask about culture, growth opportunities, and team dynamics.
Good luck, Diego! 🚀
You've built impressive projects with real architecture decisions. The fact that you can explain why you chose each technology is what will set you apart. Prepare your stories, know your stack, and be confident.