Transcript cs jobs
Getting a Job in CS
{
Micah Chasteen
}
Outline
Introduction
Getting Started
Resumes
Interviews
Phone
In-Person
<A_Lot_More_Stuff_Goes_Here>
Offers
Introduction
Why
Set Goals
Give Confidence
Demystify The Process
Provide Career Options
Because People Asked Me To
Introduction
Disclaimer
May Be Too Intense For Some Viewers
No Purchase Necessary
For Educational Purposes Only
Use Only As Directed
Some Assembly Required
Your Miles May Vary
Getting Started
If you have time…
Projects
Internships
Research
Papers
Conferences
Contests
Getting Started
Start Studying/Refreshing
Apply Everywhere
Even Google (When?)
Experience and Future Opportunities
Use Job Sites
Network
LinkedIn and Alumni
Resumes
If you have time…
Start Your Resume
Add Details As They Happens
Always Keep It Up To Date
Resumes
Tailor For The Position
Resume Paper
1 Page (B.S.) || 2 Page (M.S.)
Clean, Organized Style
Promote Yourself Reasonably
Multiple Formats (PDF, DOC, TXT)
4 Second Rule
Resumes
Layout
Clubs/Activities
Name
Interests
Contact
Objective
Reference
Requests
QRC/Link To
Personal Site
Experience
Skills
Education (GPA)
Projects
Resumes
Must Haves
C++ or Java
Hot Skills
Mobile Development
Cloud Computing
Personal Website
Electronic Resume
More Details
Easy, Professional Name
Reliable, Accessible
Elegant, Properly Coded
http://resume.csgradbox.com
Reminders/Suggestions
Actively Review Social Media
Reduce Your Social Time
You Get Out What You Put In
Don’t Take The First Job
Aim For Concurrent Offers
This Can Be A Long Process
Recruiters Want Money (Not You)
Interviewing
HR Questions
Project Questions (Excel)
Be Polite And Personable
Be Confident and Don’t Give Up
Have Questions For Them
Do At Least One Mock Interview
(One For Each Kind)
Phone
Find Secluded Area
Use Landline w/Hands Free
No Noises or Distractions
Keep Resume In Sight
No Visual Contact
In Person
Be Early
Dress Nice But Appropriate
Be Rested and Relaxed
Turn Cell Phone OFF
Don’t Fidget
Take Extra Resumes
Riddles
Why Are Manhole Covers Round?
How Many Golf Balls Can Fit On A
School Bus?
How Many Piano Tuners Are There In
Nashville?
How Do They Make M&Ms?
Question
This a game for two players
You have a flat, rectangular table
Each player lays a quarter on the table
somewhere that touches no other
quarter
The loser is the first person who
cannot place a quarter
What is your strategy if you go first?
Coding Interviews
Stress
Confidence
Knowledge
Quick Thinking
Explaining
Problem Solving
Coding Interviews
Space Complexity
Growth Complexity
Asymptotic Notation
Best, Average, And Worst Case
Coding Interviews
Practice On A Whiteboard
Do Not Look Anything Up
Talk Out Loud
Time Yourself
Coding Interviews
Programming Contests
Top Coder
ACM ICPC
Code Sprint
Interview Sites
Glass Door
Career Cup
Concepts
Recursion
Encryption
Encoding
Parallel Processing
Deadlock, Livelock
Monitors, Semaphors, Locks
Process VS. Thread
Distributive Computing
Must-Know Problems
Traveling Salesperson
Knapsack (0/1)
Shortest Path
Language Specific
C++
Size of Data Types
IEEE Format
Abstract Classes
Overloaded Operators
Multiple Inheritance
ST Library
Language Specific
Java
Final, Finalize, Finally
Inheritance and Interface
Pass-By-Value or Pass-By-Reference
Synchronization
Garbage Collection
Basic Algorithms
Sorting
Heap Sort
Quick Sort
Merge Sort
Searching
Min, Max
Kth Least
S.E. Questions
Design Patterns
What Are These?
Test Cases
Practice Testing Programs
Question
You have an array with 999 locations,
and each location contains a unique
integer with a value from 1 to 1000
(inclusive)
How do you find the missing number?
Data Structures/ADT
Strings
Reverse (Words)
Remove Characters
Matching Substrings
Linked Lists
Reverse (Singly-Linked)
Swap Pairs (Singly-Linked)
Delete (Circular)
Question
Write a program to find the
Mth-to-last element in a singly linked
list given only the head of the list.
Question
Write a program to determine if a
singly linked list is cyclic.
If it is then return the node that begins
the new cycle.
Data Structures/ADT
Queue
Heap
Make From Stacks
Priority Queue
Hash Table
Ordered Hash Table
Data Structures/ADT
Trees
Binary Tree
Binary Search Tree
2-3 Tree and 2-3-4 Tree
Red-Black Tree or AVL Tree
Pre/In/Post Order Traversal
Data Structures/ADT
Graphs
Breadth First Search
Depth First Search
Dijkstra’s Shortest Path
A* Search
Minimal Spanning Tree
Design Questions
Amazon Streaming Service
Amazon Recommendation Service
Question
Create a class-based weapon schema
Question
Self-Testing Furniture Class
Coding Questions
Pivot of Rotated Array
Conway’s Game of Life
Scrabble Tiles
Boggle Solver
Search Continuous Floating Point F(X)
Fibonacci Sequence (Memoized)
Sum of Array Pairs
Question
Write a program that prints out all the
valid words on a Boggle board.
Question
Write a program to determine if an
array has a pair of numbers that equal
a given sum.
Comparing Offers
Read Everything
Look At The Benefits
Consider Perks
Travel Percentage
Relocation
Research Location (CoL)
Comparing Offers
Work Environment
Ability To Advance
Experience Gained
Is It What You Want To Do?
Declining Offers
Call Them
Be As Polite As Possible
Keep Contact Information
Getting a Job in CS
{
Thank You!
}