44
BUILDING A Software Development Team KHURRAM VIRANI JAKE HIRSCH-ALLEN

Building a Software Development Team - MaRS Best Practices

  • View
    6.598

  • Download
    0

Embed Size (px)

DESCRIPTION

This presentation focuses on how to seek, recruit and retain good talent for your software development team. It also examines external human resource factors such as the job market, the competition and software trends.

Citation preview

Page 1: Building a Software Development Team - MaRS Best Practices

BUILDING A Software Development Team

KHURRAM VIRANI JAKE HIRSCH-ALLEN

Page 2: Building a Software Development Team - MaRS Best Practices
Page 3: Building a Software Development Team - MaRS Best Practices

KHURRAM VIRANI @viranik

PARTNER Functional Imperative @func_i www.functionalimperative.com

INSTRUCTOR Bitmaker Labs @bitmakerlabs www.bitmakerlabs.com

Page 4: Building a Software Development Team - MaRS Best Practices

JAKE HIRSCH-ALLEN @jakehirschallen

PARTNER Functional Imperative @func_i www.functionalimperative.com

DIRECTOR, BD OODA Technologies @oodatech www.ooda.ca

SPM Incentives for Global Health @HealthImpact www.healthimpactfund.org

Page 5: Building a Software Development Team - MaRS Best Practices

DEMAND

Page 6: Building a Software Development Team - MaRS Best Practices

INDEED.COM Job Trends

Page 7: Building a Software Development Team - MaRS Best Practices
Page 8: Building a Software Development Team - MaRS Best Practices

"Software Is Eating The World”Marc Andreessen, Aug 2011 Buy A 10x Software Developer: Its The Best Investment You Can Make… Venkatesh Rao, April 2016

Page 9: Building a Software Development Team - MaRS Best Practices

TORONTO

Page 10: Building a Software Development Team - MaRS Best Practices

TORONTO IS #8 Top 20 Startup Ecosystems Startup Genome Report 2012

Page 11: Building a Software Development Team - MaRS Best Practices

SR. DEVELOPER

80K 100K

TORONTO: SALARIES JR. DEVELOPER (NEW CS GRAD)

50K 60K

Page 12: Building a Software Development Team - MaRS Best Practices

Big Challenge

Page 13: Building a Software Development Team - MaRS Best Practices

SFO YYZ

Page 14: Building a Software Development Team - MaRS Best Practices

AND DETERMINING FIT

HIRING

Page 15: Building a Software Development Team - MaRS Best Practices

THE GENERALIST

THE SPECIALIST

Page 16: Building a Software Development Team - MaRS Best Practices

FRAMEWORK Developer

APPLICATION Developer

VS

Page 17: Building a Software Development Team - MaRS Best Practices

"Should I hire a Rails developer for my Django project?"

Depends...

Q:

Page 18: Building a Software Development Team - MaRS Best Practices

"Finding Great Developers"Joel Spolsky, 2006

Page 19: Building a Software Development Team - MaRS Best Practices

Great developers already have jobs Go where they hang out

Page 20: Building a Software Development Team - MaRS Best Practices

INTERVIEWING

(MOSTLY TECHNICAL)

Page 21: Building a Software Development Team - MaRS Best Practices

Real World Example: ①  Transcript ②  Online Portfolio (apps, twitter, blog, github)

③  30m technical phone screen ④  Code challenge (1-2hr homework)

⑤  3h on-site technical interview ⑥  Pair programming with Sr. Dev

(on-site half-day session)

INTERVIEWING JUNIORS / NEW GRADS

Page 22: Building a Software Development Team - MaRS Best Practices

Jr. Ruby on Rails Developer:

TECHNICAL REQUIREMENTS

Page 23: Building a Software Development Team - MaRS Best Practices

Technical Questions Some examples

Page 24: Building a Software Development Team - MaRS Best Practices

WHITEBOARD: FIZZ BUZZ

WHY CAN'T PROGRAMMERS.. PROGRAM? http://www.codinghorror.com/blog/2007/02/why-cant-programmers program.html FIZZ BUZZ TEST http://c2.com/cgi/wiki?FizzBuzzTest

Write a program that prints the numbers from 1 to 100. But for multiples of three print “fizz” instead of the number and for the multiples of five print “buzz”. For numbers which are multiples of both three and five print “fizzbuzz”.

Page 25: Building a Software Development Team - MaRS Best Practices
Page 26: Building a Software Development Team - MaRS Best Practices

More emphasis on Portfolio Conversational approach Solve Architecture problems Soft skills more important

INTERVIEWING SENIOR DEVELOPERS

Page 27: Building a Software Development Team - MaRS Best Practices

WHITEBOARD: PARKING LOT

Remember, Conversation: “Why are you doing it this way?” “Have you considered this?” “What if X happens?”

Model the software system that would be used to operate and manage a parking lot that is used for both public and private parking. Tickets can be purchased and rates can change…

Page 28: Building a Software Development Team - MaRS Best Practices

WHITEBOARD: CHAT

Remember, Conversation: “Why are you doing it this way?” “Have you considered this?” “What if X happens?”

Model the architecture to build out facebook chat. What open source technologies would you leverage?

Page 29: Building a Software Development Team - MaRS Best Practices

”What if we don’t have anyone technical on the team to conduct tech interviews?"

Find some...

Q:

Page 30: Building a Software Development Team - MaRS Best Practices

Reference Checks Are old school

Page 31: Building a Software Development Team - MaRS Best Practices

MORE THAN JUST A FOOSBALL TABLE

CULTURE

Page 32: Building a Software Development Team - MaRS Best Practices

DEVELOPERS ARE CREATIVE Artists don't work 9 to 5

Page 33: Building a Software Development Team - MaRS Best Practices

DEVELOPERS AS PRODUCT DRIVERS esp. when the company IS the product

Page 34: Building a Software Development Team - MaRS Best Practices

lunch together

LUNCH

TOGETHER

Page 35: Building a Software Development Team - MaRS Best Practices

REMOTE TALENT NO, NOT “OFFSHORING”

Page 36: Building a Software Development Team - MaRS Best Practices

"Stop whining and start hiring

remote workers"

"Why We (Still) Believe in Working Remotely"

Page 37: Building a Software Development Team - MaRS Best Practices

① Don't want to relocate ② Need to relocate: "My spouse is going

to med school" ③  Productivity: "most of our remote

developers work longer hours than our in-office devs."

④ Collaborative workspaces ⑤  Forces better communication ⑥ Not widely adopted (yet)

WHY?

Page 38: Building a Software Development Team - MaRS Best Practices

REMOTE TALE The Technology Is There …

Page 39: Building a Software Development Team - MaRS Best Practices

EQUITY FOR WHEN $$ IS

JUST NOT ENOUGH

Page 40: Building a Software Development Team - MaRS Best Practices

EQUITY Very heavily debated topic.

① Fairness > %

② Vesting

③ Slices

④ Shotgun clause

⑤ Equity ! = Currency

⑥ Dilution / Valuation !%#&

Page 41: Building a Software Development Team - MaRS Best Practices

CONCLUSION

① High Demand: YYZ losing talent to SFO

② Remote talent & distributed teams => Future!

③ Startups: seek generalist, application developers

④ Established companies: seek both generalists & specialists

⑤ Technical interviews are very important

⑥ Go where the talent is

⑦ Culture is important to attract and retain talent

⑧ Give vesting equity to your founding team

Page 42: Building a Software Development Team - MaRS Best Practices

REFERENCES Further Reading

http://alittlebitofjake.wordpress.com/2012/04/16/buy-a-10x-software-developer-its-the-best-investment-you-can-make/

http://techcrunch.com/2012/11/20/startup-genome-ranks-the-worlds-top-startup-ecosystems-silicon-

valley-tel-aviv-l-a-lead-the-way/

http://blog.stackoverflow.com/2013/02/why-we-still-believe-in-working-remotely/

http://www.joelonsoftware.com/articles/FindingGreatDevelopers.html

http://37signals.com/svn/posts/3064-stop-whining-and-start-hiring-remote-workers

http://online.wsj.com/article/SB10001424053111903480904576512250915629460.html http://justinjackson.ca/why-distributed-teams-are-more-effective/

http://answers.onstartups.com/questions/6949/forming-a-new-software-startup-how-do-i-allocate-ownership-fairly/23326#23326

Page 43: Building a Software Development Team - MaRS Best Practices

REFERENCES Further Reading

http://foundrs.com/ http://www.andrew.cmu.edu/user/fd0n/35%20Founders%27%20Pie%20Calculator.htm http://berkonomics.com/?p=1214 http://billpayne.com/2011/02/14/startup-valuations-the-dave-berkus-method.html http://medstars.com/images/docs/modified_berkus_method.pdf http://www.bothsidesofthetable.com/2011/10/14/understanding-how-dilution-affects-you-at-a-startup/

Page 44: Building a Software Development Team - MaRS Best Practices

QUESTIONS?

FIN.

Presentation Designed by