Building a Software Development Team - MaRS Best Practices

  • View
    6.598

  • Download
    0

  • Category

    Business

Preview:

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

BUILDING A Software Development Team

KHURRAM VIRANI JAKE HIRSCH-ALLEN

KHURRAM VIRANI @viranik

PARTNER Functional Imperative @func_i www.functionalimperative.com

INSTRUCTOR Bitmaker Labs @bitmakerlabs www.bitmakerlabs.com

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

DEMAND

INDEED.COM Job Trends

"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

TORONTO

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

SR. DEVELOPER

80K 100K

TORONTO: SALARIES JR. DEVELOPER (NEW CS GRAD)

50K 60K

Big Challenge

SFO YYZ

AND DETERMINING FIT

HIRING

THE GENERALIST

THE SPECIALIST

FRAMEWORK Developer

APPLICATION Developer

VS

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

Depends...

Q:

"Finding Great Developers"Joel Spolsky, 2006

Great developers already have jobs Go where they hang out

INTERVIEWING

(MOSTLY TECHNICAL)

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

Jr. Ruby on Rails Developer:

TECHNICAL REQUIREMENTS

Technical Questions Some examples

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”.

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

INTERVIEWING SENIOR DEVELOPERS

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…

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?

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

Find some...

Q:

Reference Checks Are old school

MORE THAN JUST A FOOSBALL TABLE

CULTURE

DEVELOPERS ARE CREATIVE Artists don't work 9 to 5

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

lunch together

LUNCH

TOGETHER

REMOTE TALENT NO, NOT “OFFSHORING”

"Stop whining and start hiring

remote workers"

"Why We (Still) Believe in Working Remotely"

① 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?

REMOTE TALE The Technology Is There …

EQUITY FOR WHEN $$ IS

JUST NOT ENOUGH

EQUITY Very heavily debated topic.

① Fairness > %

② Vesting

③ Slices

④ Shotgun clause

⑤ Equity ! = Currency

⑥ Dilution / Valuation !%#&

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

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

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/

QUESTIONS?

FIN.

Presentation Designed by

Recommended