SlideShare a Scribd company logo
How to Hire a
HackerCHAD MCCALLUM
@CHADEMM
WWW.RTIGGER.COM
First things first…
Not this kind of hacker This kind!
What makes a great software
developer?
 Constructive and varied experience
 Sees the value in testing (automated
and manual)
 Good grasp of system planning and
dependencies
 Positive attitude
 Self-motivated learner
 Able to identify personal ability
 Motivated to keep improving
What part of this list says
“5 years with C#?”
Why is this code bad?
function addThingsTogetherToGetAResult(int1, int2, int3, int4, int5)
foo = 0
if int1 ~= nil and int1 ~= 0 then
foo = foo + int1
end
if int2 ~= nil and int2 ~= 0 then
foo = foo + int2
end
-- …continue ad nauseum…
return foo
end
What can an experienced
software developer provide?
 Ability to notice “code smells”
 Duplicate code
 Long methods
 Large classes
 Too many parameters
 Poor class & method design
 Appreciation for dependencies and structure of code
 Automated (unit/integration/behavioural) testing and the
architecture that goes with it
What does language experience
provide?
 Nothing that can’t be learned over a week with Google
Employers are looking for the
“Perfect Employee”
Most employers have an unrealistic view of
software development
 Not willing to train
 Expect you to be overqualified
 “You have a Computer Science / Software Engineering degree, so this
should be simple”
It’s hard to hire “great”
 90% of applications are recruiter spam
 With the advent of telecommuting, anyone can apply for anything
 A degree isn’t enough anymore
 How do you differentiate?
How do you stand out?
Show the employer you will add value
 Targeted Practice & Experience
 Wanna be a web developer? Learn web development!
 Demonstrable experience
 Make your code & experience public
 Blog, open source, public code repository, online code submission
 ABC: Always Be Coding
How do you find a hacker?
 “Good developers aren’t looking for jobs – they already have one”
 We’re just like any other employee – there’s a certain comfort in
knowing we have a solid job, even if there’s a better opportunity
 We need to be flirted with :P
How do you attract a hacker?
 Approach us in context
 No form-emails
 Follow a project we’re working on, send us a question or comment
 If you don’t speak the language, get a developer to follow up
 Attend meetups (like barcamp!)
 Attended by passionate developers, who are willing to invest personal
time
 If you can, host a meetup – shows you support the dev community and
gives an opportunity to address the crowd
How do you attract a hacker?
 Open House
 Work environment & culture is super important to developers – show
yours off!
 If you’re not comfortable showing it off, then you probably need to work on it
 Great opportunity to interact with potential employees in an informal
environment
 Be Interesting
 Don’t ask us interview questions, show us an interesting problem
How do you find a hacker?
 Culture Fit
 Your team, office, and company works in a certain way. Sometimes
people won’t fit
 A smart developer with a bad attitude can bring down an entire team
 Arguably, more important than technical skill
 You can teach someone C#, you can’t (easily) teach them to be a team
player

More Related Content

What's hot

How to review a pull request
How to review a pull requestHow to review a pull request
How to review a pull request
rouanw
 
NUS Hackers Project Intern 2016
NUS Hackers Project Intern 2016NUS Hackers Project Intern 2016
NUS Hackers Project Intern 2016
Vishnu Prem
 
I Want 2 Do Project Tell Me Wat 2 Do
I Want 2 Do Project Tell Me Wat 2 DoI Want 2 Do Project Tell Me Wat 2 Do
I Want 2 Do Project Tell Me Wat 2 Do
Felipe Cerda
 
The bigrewrite
The bigrewriteThe bigrewrite
The bigrewrite
Codecamp Romania
 
Technical interview experience sharing
Technical interview experience sharingTechnical interview experience sharing
Technical interview experience sharing
Katy Lee
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven DevelopmentSamnang Chhun
 
Code Review Matters and Manners
Code Review Matters and MannersCode Review Matters and Manners
Code Review Matters and Manners
Trisha Gee
 
Things IT Undergrads Should Know (But Don't)
Things IT Undergrads Should Know (But Don't)Things IT Undergrads Should Know (But Don't)
Things IT Undergrads Should Know (But Don't)
bryanbibat
 
Cracking The Technical Interview Uw
Cracking The Technical Interview   UwCracking The Technical Interview   Uw
Cracking The Technical Interview Uw
careercup
 
SFScon 2020 - Xiaofeng Wang Jorge Melegati - Stop talking requirementsstart t...
SFScon 2020 - Xiaofeng Wang Jorge Melegati - Stop talking requirementsstart t...SFScon 2020 - Xiaofeng Wang Jorge Melegati - Stop talking requirementsstart t...
SFScon 2020 - Xiaofeng Wang Jorge Melegati - Stop talking requirementsstart t...
South Tyrol Free Software Conference
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
Md. Hasan Basri (Angel)
 
Permanent Software Engineers and Architects - Cambridge
Permanent Software Engineers and Architects - CambridgePermanent Software Engineers and Architects - Cambridge
Permanent Software Engineers and Architects - Cambridge
gilesjacobs
 
Prototype 1
Prototype 1Prototype 1
Prototype 1Vijaya M
 
CLEAN CODE
CLEAN CODECLEAN CODE
CLEAN CODE
Knoldus Inc.
 
Cinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patternsCinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patterns
Steven Smith
 

What's hot (16)

How to review a pull request
How to review a pull requestHow to review a pull request
How to review a pull request
 
NUS Hackers Project Intern 2016
NUS Hackers Project Intern 2016NUS Hackers Project Intern 2016
NUS Hackers Project Intern 2016
 
I Want 2 Do Project Tell Me Wat 2 Do
I Want 2 Do Project Tell Me Wat 2 DoI Want 2 Do Project Tell Me Wat 2 Do
I Want 2 Do Project Tell Me Wat 2 Do
 
The bigrewrite
The bigrewriteThe bigrewrite
The bigrewrite
 
Technical interview experience sharing
Technical interview experience sharingTechnical interview experience sharing
Technical interview experience sharing
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Code Review Matters and Manners
Code Review Matters and MannersCode Review Matters and Manners
Code Review Matters and Manners
 
Things IT Undergrads Should Know (But Don't)
Things IT Undergrads Should Know (But Don't)Things IT Undergrads Should Know (But Don't)
Things IT Undergrads Should Know (But Don't)
 
Cracking The Technical Interview Uw
Cracking The Technical Interview   UwCracking The Technical Interview   Uw
Cracking The Technical Interview Uw
 
SFScon 2020 - Xiaofeng Wang Jorge Melegati - Stop talking requirementsstart t...
SFScon 2020 - Xiaofeng Wang Jorge Melegati - Stop talking requirementsstart t...SFScon 2020 - Xiaofeng Wang Jorge Melegati - Stop talking requirementsstart t...
SFScon 2020 - Xiaofeng Wang Jorge Melegati - Stop talking requirementsstart t...
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
The bigrewrite
The bigrewriteThe bigrewrite
The bigrewrite
 
Permanent Software Engineers and Architects - Cambridge
Permanent Software Engineers and Architects - CambridgePermanent Software Engineers and Architects - Cambridge
Permanent Software Engineers and Architects - Cambridge
 
Prototype 1
Prototype 1Prototype 1
Prototype 1
 
CLEAN CODE
CLEAN CODECLEAN CODE
CLEAN CODE
 
Cinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patternsCinci ug-january2011-anti-patterns
Cinci ug-january2011-anti-patterns
 

Viewers also liked

Windows 8 programming with html and java script
Windows 8 programming with html and java scriptWindows 8 programming with html and java script
Windows 8 programming with html and java script
RTigger
 
Open source web services
Open source web servicesOpen source web services
Open source web services
RTigger
 
Ready, set, go! An introduction to the Go programming language
Ready, set, go! An introduction to the Go programming languageReady, set, go! An introduction to the Go programming language
Ready, set, go! An introduction to the Go programming language
RTigger
 
Open regina
Open reginaOpen regina
Open regina
RTigger
 
You Can't Buy Agile
You Can't Buy AgileYou Can't Buy Agile
You Can't Buy Agile
RTigger
 
Single page apps and the web of tomorrow
Single page apps and the web of tomorrowSingle page apps and the web of tomorrow
Single page apps and the web of tomorrow
RTigger
 
Caching up is hard to do: Improving your Web Services' Performance
Caching up is hard to do: Improving your Web Services' PerformanceCaching up is hard to do: Improving your Web Services' Performance
Caching up is hard to do: Improving your Web Services' Performance
RTigger
 
Async in .NET
Async in .NETAsync in .NET
Async in .NETRTigger
 
Keynote - Jim Geovedi - professional-hackers
Keynote - Jim Geovedi - professional-hackersKeynote - Jim Geovedi - professional-hackers
Keynote - Jim Geovedi - professional-hackersidsecconf
 

Viewers also liked (10)

Windows 8 programming with html and java script
Windows 8 programming with html and java scriptWindows 8 programming with html and java script
Windows 8 programming with html and java script
 
Aruna Kumar_Resume
Aruna Kumar_ResumeAruna Kumar_Resume
Aruna Kumar_Resume
 
Open source web services
Open source web servicesOpen source web services
Open source web services
 
Ready, set, go! An introduction to the Go programming language
Ready, set, go! An introduction to the Go programming languageReady, set, go! An introduction to the Go programming language
Ready, set, go! An introduction to the Go programming language
 
Open regina
Open reginaOpen regina
Open regina
 
You Can't Buy Agile
You Can't Buy AgileYou Can't Buy Agile
You Can't Buy Agile
 
Single page apps and the web of tomorrow
Single page apps and the web of tomorrowSingle page apps and the web of tomorrow
Single page apps and the web of tomorrow
 
Caching up is hard to do: Improving your Web Services' Performance
Caching up is hard to do: Improving your Web Services' PerformanceCaching up is hard to do: Improving your Web Services' Performance
Caching up is hard to do: Improving your Web Services' Performance
 
Async in .NET
Async in .NETAsync in .NET
Async in .NET
 
Keynote - Jim Geovedi - professional-hackers
Keynote - Jim Geovedi - professional-hackersKeynote - Jim Geovedi - professional-hackers
Keynote - Jim Geovedi - professional-hackers
 

Similar to How to hire a hacker

Landing Your Next PHP Job
Landing Your Next PHP JobLanding Your Next PHP Job
Landing Your Next PHP Job
Dennis Slade Jr.
 
How To Do Kick-Ass Software Development
How To Do Kick-Ass Software DevelopmentHow To Do Kick-Ass Software Development
How To Do Kick-Ass Software Development
Sven Peters
 
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software DevelopmentJAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Developmentjazoon13
 
Europython how to make it recruiting suck less?
Europython   how to make it recruiting suck less?Europython   how to make it recruiting suck less?
Europython how to make it recruiting suck less?
🤓 Iwan Gulenko 💰Powerful Geek
 
Yenikod Yazılım Kursu - Kodlama Öğrenebilir Miyim? Kodlama Bana Göre Mi?
Yenikod Yazılım Kursu - Kodlama Öğrenebilir Miyim? Kodlama Bana Göre Mi?Yenikod Yazılım Kursu - Kodlama Öğrenebilir Miyim? Kodlama Bana Göre Mi?
Yenikod Yazılım Kursu - Kodlama Öğrenebilir Miyim? Kodlama Bana Göre Mi?
Mustafa Ekim
 
Code Quality Makes Your Job Easier
Code Quality Makes Your Job EasierCode Quality Makes Your Job Easier
Code Quality Makes Your Job Easier
Tonya Mork
 
Senti is looking for Marketing interns!
Senti is looking for Marketing interns!Senti is looking for Marketing interns!
Senti is looking for Marketing interns!
Senti
 
Blog-how-do-i-hire-a-python-programmer-.pdf
Blog-how-do-i-hire-a-python-programmer-.pdfBlog-how-do-i-hire-a-python-programmer-.pdf
Blog-how-do-i-hire-a-python-programmer-.pdf
Paidant
 
Introduction to architecture katas
Introduction to architecture katasIntroduction to architecture katas
Introduction to architecture katas
Frank Sons
 
Career Hacks for Developers
Career Hacks for DevelopersCareer Hacks for Developers
Career Hacks for Developers
BarElin
 
How To Become A Good C# Programmer
How To Become A Good C# ProgrammerHow To Become A Good C# Programmer
How To Become A Good C# Programmer
LearnItFirst.com
 
Building a reputation in IT
Building a reputation in ITBuilding a reputation in IT
Building a reputation in IT
YitzikCasapu
 
Code smells and Other Malodorous Software Odors
Code smells and Other Malodorous Software OdorsCode smells and Other Malodorous Software Odors
Code smells and Other Malodorous Software Odors
Clint Edmonson
 
Create Your Tester Portfolio
Create Your Tester PortfolioCreate Your Tester Portfolio
Create Your Tester Portfolio
Shmuel Gershon
 
From TrainedMonkey to Google SoC mentor – How to become an OOo developer
From TrainedMonkey to Google SoC mentor – How to become an OOo developerFrom TrainedMonkey to Google SoC mentor – How to become an OOo developer
From TrainedMonkey to Google SoC mentor – How to become an OOo developer
Alexandro Colorado
 
Lessons Learned About Software Development
Lessons Learned About Software DevelopmentLessons Learned About Software Development
Lessons Learned About Software Development
Jeffrey Ryan Thalhammer
 
How to land your first job in tech without an engineering degree
How to land your first job in tech without an engineering degreeHow to land your first job in tech without an engineering degree
How to land your first job in tech without an engineering degree
Stuti Verma
 
Senti is looking for interns!
Senti is looking for interns!Senti is looking for interns!
Senti is looking for interns!
Senti
 
Hack It 'Til You Make It: Acing The Technical Interview
Hack It 'Til You Make It: Acing The Technical InterviewHack It 'Til You Make It: Acing The Technical Interview
Hack It 'Til You Make It: Acing The Technical Interview
jaysonjphillips
 

Similar to How to hire a hacker (20)

Landing Your Next PHP Job
Landing Your Next PHP JobLanding Your Next PHP Job
Landing Your Next PHP Job
 
How To Do Kick-Ass Software Development
How To Do Kick-Ass Software DevelopmentHow To Do Kick-Ass Software Development
How To Do Kick-Ass Software Development
 
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software DevelopmentJAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
JAZOON'13 - Sven Peters - How to do Kick-Ass Software Development
 
Europython how to make it recruiting suck less?
Europython   how to make it recruiting suck less?Europython   how to make it recruiting suck less?
Europython how to make it recruiting suck less?
 
Yenikod Yazılım Kursu - Kodlama Öğrenebilir Miyim? Kodlama Bana Göre Mi?
Yenikod Yazılım Kursu - Kodlama Öğrenebilir Miyim? Kodlama Bana Göre Mi?Yenikod Yazılım Kursu - Kodlama Öğrenebilir Miyim? Kodlama Bana Göre Mi?
Yenikod Yazılım Kursu - Kodlama Öğrenebilir Miyim? Kodlama Bana Göre Mi?
 
How to hire frontend engineers
How to hire frontend engineersHow to hire frontend engineers
How to hire frontend engineers
 
Code Quality Makes Your Job Easier
Code Quality Makes Your Job EasierCode Quality Makes Your Job Easier
Code Quality Makes Your Job Easier
 
Senti is looking for Marketing interns!
Senti is looking for Marketing interns!Senti is looking for Marketing interns!
Senti is looking for Marketing interns!
 
Blog-how-do-i-hire-a-python-programmer-.pdf
Blog-how-do-i-hire-a-python-programmer-.pdfBlog-how-do-i-hire-a-python-programmer-.pdf
Blog-how-do-i-hire-a-python-programmer-.pdf
 
Introduction to architecture katas
Introduction to architecture katasIntroduction to architecture katas
Introduction to architecture katas
 
Career Hacks for Developers
Career Hacks for DevelopersCareer Hacks for Developers
Career Hacks for Developers
 
How To Become A Good C# Programmer
How To Become A Good C# ProgrammerHow To Become A Good C# Programmer
How To Become A Good C# Programmer
 
Building a reputation in IT
Building a reputation in ITBuilding a reputation in IT
Building a reputation in IT
 
Code smells and Other Malodorous Software Odors
Code smells and Other Malodorous Software OdorsCode smells and Other Malodorous Software Odors
Code smells and Other Malodorous Software Odors
 
Create Your Tester Portfolio
Create Your Tester PortfolioCreate Your Tester Portfolio
Create Your Tester Portfolio
 
From TrainedMonkey to Google SoC mentor – How to become an OOo developer
From TrainedMonkey to Google SoC mentor – How to become an OOo developerFrom TrainedMonkey to Google SoC mentor – How to become an OOo developer
From TrainedMonkey to Google SoC mentor – How to become an OOo developer
 
Lessons Learned About Software Development
Lessons Learned About Software DevelopmentLessons Learned About Software Development
Lessons Learned About Software Development
 
How to land your first job in tech without an engineering degree
How to land your first job in tech without an engineering degreeHow to land your first job in tech without an engineering degree
How to land your first job in tech without an engineering degree
 
Senti is looking for interns!
Senti is looking for interns!Senti is looking for interns!
Senti is looking for interns!
 
Hack It 'Til You Make It: Acing The Technical Interview
Hack It 'Til You Make It: Acing The Technical InterviewHack It 'Til You Make It: Acing The Technical Interview
Hack It 'Til You Make It: Acing The Technical Interview
 

More from RTigger

Give your web apps some backbone
Give your web apps some backboneGive your web apps some backbone
Give your web apps some backbone
RTigger
 
Hackers, hackathons, and you
Hackers, hackathons, and youHackers, hackathons, and you
Hackers, hackathons, and you
RTigger
 
AJAX, JSON, and Client-Side Templates
AJAX, JSON, and Client-Side TemplatesAJAX, JSON, and Client-Side Templates
AJAX, JSON, and Client-Side Templates
RTigger
 
JavaScript!
JavaScript!JavaScript!
JavaScript!
RTigger
 
Parallel Processing
Parallel ProcessingParallel Processing
Parallel Processing
RTigger
 
Node.js
Node.jsNode.js
Node.js
RTigger
 
Reactive Extensions
Reactive ExtensionsReactive Extensions
Reactive Extensions
RTigger
 
Sql vs NoSQL
Sql vs NoSQLSql vs NoSQL
Sql vs NoSQL
RTigger
 
Git’in Jiggy With Git
Git’in Jiggy With GitGit’in Jiggy With Git
Git’in Jiggy With Git
RTigger
 
What The F#
What The F#What The F#
What The F#
RTigger
 
Web Services
Web ServicesWeb Services
Web Services
RTigger
 
Total Engagement
Total EngagementTotal Engagement
Total Engagement
RTigger
 

More from RTigger (12)

Give your web apps some backbone
Give your web apps some backboneGive your web apps some backbone
Give your web apps some backbone
 
Hackers, hackathons, and you
Hackers, hackathons, and youHackers, hackathons, and you
Hackers, hackathons, and you
 
AJAX, JSON, and Client-Side Templates
AJAX, JSON, and Client-Side TemplatesAJAX, JSON, and Client-Side Templates
AJAX, JSON, and Client-Side Templates
 
JavaScript!
JavaScript!JavaScript!
JavaScript!
 
Parallel Processing
Parallel ProcessingParallel Processing
Parallel Processing
 
Node.js
Node.jsNode.js
Node.js
 
Reactive Extensions
Reactive ExtensionsReactive Extensions
Reactive Extensions
 
Sql vs NoSQL
Sql vs NoSQLSql vs NoSQL
Sql vs NoSQL
 
Git’in Jiggy With Git
Git’in Jiggy With GitGit’in Jiggy With Git
Git’in Jiggy With Git
 
What The F#
What The F#What The F#
What The F#
 
Web Services
Web ServicesWeb Services
Web Services
 
Total Engagement
Total EngagementTotal Engagement
Total Engagement
 

Recently uploaded

Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
Claudio Di Ciccio
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
Alex Pruden
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 

Recently uploaded (20)

Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”“I’m still / I’m still / Chaining from the Block”
“I’m still / I’m still / Chaining from the Block”
 
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofszkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex Proofs
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 

How to hire a hacker

  • 1. How to Hire a HackerCHAD MCCALLUM @CHADEMM WWW.RTIGGER.COM
  • 2. First things first… Not this kind of hacker This kind!
  • 3. What makes a great software developer?  Constructive and varied experience  Sees the value in testing (automated and manual)  Good grasp of system planning and dependencies  Positive attitude  Self-motivated learner  Able to identify personal ability  Motivated to keep improving What part of this list says “5 years with C#?”
  • 4. Why is this code bad? function addThingsTogetherToGetAResult(int1, int2, int3, int4, int5) foo = 0 if int1 ~= nil and int1 ~= 0 then foo = foo + int1 end if int2 ~= nil and int2 ~= 0 then foo = foo + int2 end -- …continue ad nauseum… return foo end
  • 5. What can an experienced software developer provide?  Ability to notice “code smells”  Duplicate code  Long methods  Large classes  Too many parameters  Poor class & method design  Appreciation for dependencies and structure of code  Automated (unit/integration/behavioural) testing and the architecture that goes with it
  • 6. What does language experience provide?  Nothing that can’t be learned over a week with Google
  • 7. Employers are looking for the “Perfect Employee” Most employers have an unrealistic view of software development  Not willing to train  Expect you to be overqualified  “You have a Computer Science / Software Engineering degree, so this should be simple”
  • 8. It’s hard to hire “great”  90% of applications are recruiter spam  With the advent of telecommuting, anyone can apply for anything  A degree isn’t enough anymore  How do you differentiate?
  • 9. How do you stand out? Show the employer you will add value  Targeted Practice & Experience  Wanna be a web developer? Learn web development!  Demonstrable experience  Make your code & experience public  Blog, open source, public code repository, online code submission  ABC: Always Be Coding
  • 10. How do you find a hacker?  “Good developers aren’t looking for jobs – they already have one”  We’re just like any other employee – there’s a certain comfort in knowing we have a solid job, even if there’s a better opportunity  We need to be flirted with :P
  • 11. How do you attract a hacker?  Approach us in context  No form-emails  Follow a project we’re working on, send us a question or comment  If you don’t speak the language, get a developer to follow up  Attend meetups (like barcamp!)  Attended by passionate developers, who are willing to invest personal time  If you can, host a meetup – shows you support the dev community and gives an opportunity to address the crowd
  • 12. How do you attract a hacker?  Open House  Work environment & culture is super important to developers – show yours off!  If you’re not comfortable showing it off, then you probably need to work on it  Great opportunity to interact with potential employees in an informal environment  Be Interesting  Don’t ask us interview questions, show us an interesting problem
  • 13. How do you find a hacker?  Culture Fit  Your team, office, and company works in a certain way. Sometimes people won’t fit  A smart developer with a bad attitude can bring down an entire team  Arguably, more important than technical skill  You can teach someone C#, you can’t (easily) teach them to be a team player

Editor's Notes

  1. We’re not talking about hiring someone to take down a website or steal credit card numbers for you – sorry if I mislead, feel free to vote with your feet We’re talking about software developers. But not just any software developers, the ones that stand out from the crowd. It’s relatively easy to get “someone who knows how to write code”. It’s hard to find a software developer.
  2. Ask the audience before revealing points, write them down on a whiteboardSo if nothing here says “5 years with C#”, why is it a job requirement?
  3. What’s wrong with this code? (ask audience)Arbitrary number of argumentsRepeating logic for each argumentCrappy function & variable nameGlobal variableHow many people know Lua?
  4. People argue, “you can’t be a master of (language X) without using it for years”. Not trueYou just pick up a bunch of other experience while you’re using language X that happens to be in that contextYou’re still learning good software development skills, and you don’t immediately lose all that experience as soon as you switch to something else. You have to relearn syntax, structure, libraries, but not much else. You can look that up, for free, online.
  5. Not willing to train – a flawed perspective. Most expect that because “you know coding” you can sit down with an existing team or codebase and get up and running within a week or two. Why aren’t they willing to invest in your productivity?Overqualified – unrealistic view of what is taught in university. “You made your own operating systems in university, why can’t you extend this CRUD app?” This is somewhat understandable, and speaks to a disconnect between the university and job marketHow many grads feel like they learned job-related skills in their program?Most, not all. There are good employers that get this
  6. Based on a recent example for a regina job posting: we received roughly 100 applications through Resumator. 90 of them were recruiter spam – blanket applications from a recruitment firm. Over half were from out of town, willing to relocate or work remotely.All the applications had some level of degree – Bachelor or Masters of ComSci & Software EngineeringHow many people were in your graduating class? (ask audience) How many people graduated before you? U of R started its ComSci program in 1971 (42 years ago)When everyone has a degree, you can’t differentiate by degree anymore.
  7. There is nothing preventing you from learning what you want to do online. Resources are free, most tooling is free.There’s a difference between saying “I can do web development” and actually showing it. Publish online.(give examples like github, codersumo, rtigger.com)
  8. Ask the crowd first, some ways that they would be “attracted” to a company