Slide 1

Slide 1 text

How to Hire Good Programmers Jennifer Bland

Slide 2

Slide 2 text

2 Who Am I? www.jenniferbland.com @ratracegrad www.youtube.com/c/JenniferBland [email protected] github.com/jenniferbland

Slide 3

Slide 3 text

3 answer at end of presentation Three Truths One Lie I made only 1 B at university rest were A I was in the 2nd largest California earthquake I have been to England 24 times I have more toy soldiers than Winston Churchill

Slide 4

Slide 4 text

INTERVIEW PROCESS TODAY SUCKS let me show you how to improve it

Slide 5

Slide 5 text

Improving the Interview Process 5 Stop doing at-home programming challenges Implement short coding exercises Have casual conversations on topics

Slide 6

Slide 6 text

Stop Doing At-Home Programming Challenges

Slide 7

Slide 7 text

Create an AngularJS applicaOon using Sass/Less. The Page view of the applicaOon will contain 2 dropdowns (The dropdowns should be custom dropdowns created using Angular direcOve) – 1st dropdown will list 2 makes – Ford, Acura. The 2nd dropdown will contain the corresponding models based on the selecOon of the make – Models dropdown will be hidden by default and will only be available in the DOM if the make is selected. · Models for Ford: Edge, Escape. · Models for Acura: ILX, MDX. The page view will also contain a content placeholder – Depending on the model selected, text will be populated in the first placeholder based on that specific model. The content should also display the corresponding image of the vehicle. Write unit tests validaOng the funcOonality above. Data should come from mongodb. Create a nodejs project for this exercise.

Slide 8

Slide 8 text

Create the objects that you feel would best model a jungle using your best OO design or funcOonal approach and coding pracOces based on the following requirements, using any language of choice.
 1. The jungle contains several species of animals; Ogers, monkeys and snakes. 2. All animals can do three things, make a sound, eat food, and sleep. 3. Each species of animal knows how many others of its kind exist. 4. By default when an animal’s energy level changes, it changes in the following ways: a. -3 for making a sound b. +5 for eaOng food c. +10 for sleeping 5. The jungle can perform a sound off. This involves all of the animals in the jungle each making their sound, along with reporOng their energy level. 6. Tigers get +5 energy for sleeping. 7. Monkeys get +2 energy for eaOng and -4 energy for making a sound. 8. Some animals have the ability to play. 9. Only monkeys can play. When they do they say "Oooo Oooo Oooo" and get -8 energy. If a monkey doesn't have enough energy to play they say "Monkey is too Ored". 10. The jungle contains several types of food; meat, fish, bugs and grain. 11. Tigers can't eat grain because they have sensiOve digesOve systems. 12. Bonus Item: The jungle can have each animal perform a random acOvity out of the ones possible for that animal. Include Unit tests if you would like to do so.

Slide 9

Slide 9 text

You will be creaOng an applicaOon in the language/framework of your choice that plays the game "Connect Four”. • Level 1: Build a playable game of Connect 4 with 2 players, a command line interface being fine. Should have player moves, win detecOon logic, Oe detecOon, etc. 
 • Level 2: Implement a standard “AI” for the computer player. A standard computer opponent should block a human from winning when able to, but plays more ad hoc and does not operate with an advanced strategy.
 • Level 3: Make it playable online (Heroku or similar) with a SPA web interface, games persisOng to a database, etc.
 * Boss Level (Bonus): the computer player's decision engine should have a sesng for smarter vs standard opponent. The smarter version should employ any sort of intelligent strategy or look-ahead approach you choose, and be able to win most Omes (assuming it goes first and it’s not playing against a player with the same strategy), though it does not have to play mathemaOcally perfectly.

Slide 10

Slide 10 text

Implement Short Coding Exercises

Slide 11

Slide 11 text

Break Questions into Areas 11 HTML/CSS JavaScript/jQuery Node.js

Slide 12

Slide 12 text

HTML / CSS 12 Test their knowledge What is the difference between an id and a class?

Slide 13

Slide 13 text

HTML / CSS 13 Test their knowledge What is the difference between an id and a class? What does the box model refer to in CSS?

Slide 14

Slide 14 text

HTML / CSS 14 Test their knowledge What is the difference between an id and a class? What does the box model refer to in CSS? reset css file and normalize.css - What are they?

Slide 15

Slide 15 text

HTML / CSS 15 Test their knowledge What is the difference between an id and a class? What does the box model refer to in CSS? reset css file and normalize.css - What are they? What is the difference between inline, inline-block and block?

Slide 16

Slide 16 text

HTML / CSS 16 Test their knowledge Write a CSS selector to select on the inner two li’s in the markup below

Slide 17

Slide 17 text

HTML / CSS 17 Test their knowledge Write a CSS selector to select only the first of the inner two li’s in the markup below

Slide 18

Slide 18 text

HTML / CSS 18 Test their knowledge Given this CSS What would the HTML look like?

Slide 19

Slide 19 text

Scoring Potential Applicants

Slide 20

Slide 20 text

Scoring System 20 Consistency is the Key Have scorecard completed by every person doing interview Set points for each question Require minimum score to hire

Slide 21

Slide 21 text

Scoring System 21 Consistency is the Key

Slide 22

Slide 22 text

Scoring System 22 Consistency is the Key Does the candidate meet minimum score? How do they compare to other candidates? Resolution of same score

Slide 23

Slide 23 text

Have a Casual Conversation

Slide 24

Slide 24 text

HTML / CSS 24 Test their knowledge What are Sass and LESS? Which one or none do you prefer to use?

Slide 25

Slide 25 text

HTML / CSS 25 Test their knowledge What are Sass and LESS? Which one or none do you prefer to use? Name some online resources that you reference when having CSS issues?

Slide 26

Slide 26 text

HTML / CSS 26 Test their knowledge What are Sass and LESS? Which one or none do you prefer to use? Name some online resources that you reference when having CSS issues? What are the various techniques for clearing floats?

Slide 27

Slide 27 text

HTML / CSS 27 Test their knowledge What are Sass and LESS? Which one or none do you prefer to use? Name some online resources that you reference when having CSS issues? What are the various techniques for clearing floats? What are some accessibility concerns that come up in CSS?

Slide 28

Slide 28 text

General Questions 28 Test their knowledge What is your favorite IDE and why?

Slide 29

Slide 29 text

General Questions 29 Test their knowledge What is your favorite IDE and why? What are your favorite programming languages?

Slide 30

Slide 30 text

General Questions 30 Test their knowledge What is your favorite IDE and why? What are your favorite programming languages? You are asked to write a palindrome function. What are some conditions you definitely want to test?

Slide 31

Slide 31 text

Conclusion

Slide 32

Slide 32 text

32 Additional Resources www.codeprep.io www.in5days.tech www.youtube.com/c/jenniferbland

Slide 33

Slide 33 text

33 answer at end of presentation Three Truths One Lie I made only 1 B at university rest were A I was in the 2nd largest California earthquake I have been to England 24 times I have more toy soldiers than Winston Churchill

Slide 34

Slide 34 text

34 Who Am I? www.jenniferbland.com @ratracegrad www.youtube.com/c/JenniferBland [email protected] github.com/jenniferbland