Post on 18-Oct-2014
description
transcript
Lean Mean PHP Machine
Jason Austin @jason_austin TEK-X
Friday, May 21, 2010
A little about me...
Friday, May 21, 2010
The team at NC State2 full time employees
2 part time students
1 manager
Friday, May 21, 2010
We do “the internet”Support apps
Campus-wide initiatives
Community engagement
Friday, May 21, 2010
A little historyStarted with one part-time developer
No standards
No best practices
No idea what I was doing
Friday, May 21, 2010
A little more history...Added a developer and a manager
Went to ZendCon 2006
Plugged into #phpc
Re-invented ourselves
Friday, May 21, 2010
Daily challengesOur business is not so'ware
Budget
Educating management
Demanding clientele
Friday, May 21, 2010
David vs. GoliathFriday, May 21, 2010
Goliath Shops
Project managers
UI designers
Code developers
QA staff
Support staff
flickr @gadgetgirl70
Friday, May 21, 2010
Goliath ShopsMultiple people responsible
Focus on a single part of a project
Anonymity
Lack of payoff
Friday, May 21, 2010
David Shops
Everyone is responsible for everything
Hazy job responsibilities
flickr @helico
Friday, May 21, 2010
David ShopsFocus on the whole project (or multiple projects)
Support a'er release
Make your mark
See the payoff
Friday, May 21, 2010
To be successfulHire and retain great developers
Spend money wisely
Communicate and collaborate
Code smarter
Friday, May 21, 2010
Tip #1Successful shops are built on
the backs of successful people
Friday, May 21, 2010
It starts with hiringKnow your needs
Targeted, clear job descriptions
Post everywhere
Recruit
Reputation
Friday, May 21, 2010
Hiring is riskyContract positions
Part-time workers
Outsource
Friday, May 21, 2010
Bad hires are poisonTrust
Efficiency
Culture clash
Friday, May 21, 2010
Who do we interview?LinkedIn, Resumé
Blog, twitter, facebook
Ask for code
Virtual interviews
Friday, May 21, 2010
Interviews suckNot a true representation of skill
Easy to fake
Time waster for the existing team
Friday, May 21, 2010
But if it’s required...Don’t play games
Have a loose plan
Ask what you want to know
Friday, May 21, 2010
Face timeSee how they think
Problem solving skills
Communication skills
Friday, May 21, 2010
The successful types:Motivated (are you interested)
Go-getter
Eager to learn
Engaged
Team Player
Friday, May 21, 2010
Be part of the processRead resume’s
Research
Interview if you have to
Friday, May 21, 2010
Team assembled. Now what?Friday, May 21, 2010
Care for the teamFeed and water daily
Encourage participation
Engage
Reward
Compensate
Friday, May 21, 2010
Build team chemistryGet away from your workspace
Sports? Video games? Beer? Whatever it takes
Avoid crazy HR team building exercises
Friday, May 21, 2010
Keep the good devsHiring new devs is expensive
Training
Exposure to apps
Institutional knowledge
Friday, May 21, 2010
Tip #2
A happy developer is a productive developer
Friday, May 21, 2010
Developers are unique Platform
IDE
Hours
Work environment
Friday, May 21, 2010
ListenOpen participation
Feedback sessions
Find what fits each dev and go with it
Friday, May 21, 2010
Shield the new guysMeetings generally suck
Block out time
Keep politics to a min
Friday, May 21, 2010
ManagementManage up or around
Facts
Deliverables
Friday, May 21, 2010
TrainingContinuous and Strategic
Webinars are cheap
Team up
Friday, May 21, 2010
TelecommutingWorks for some, not all
More focus
Small, dark places where awesome code lives
Friday, May 21, 2010
Tip #3Spend money where you get the most bang for your buck
Friday, May 21, 2010
Open Source is your friendProject Management
Issue Tracking
Administrative Tools
Productivity Tools
Friday, May 21, 2010
Use existing toolsCodebase management
Support
Cheaper in the long run
Friday, May 21, 2010
Prove the valueCase studies
Documentation
Expert Trusted advice
Friday, May 21, 2010
Follow throughResults are critical
Credibility
Makes the next request easier
Friday, May 21, 2010
Tip #4Join in the discussion at every
level
flickr: @danielygo
Friday, May 21, 2010
Get localMeetup.com
Find a user group
Connect with colleagues
Friday, May 21, 2010
Get globalIRC at #phpc
Conferences
Friday, May 21, 2010
Put yourself out therePHPers aren’t scary (mostly)
Take initiative
Connect yourself, then connect others
Friday, May 21, 2010
Tip #5Reduce, reuse, recycle
Friday, May 21, 2010
Write once, use manyCode reusability
Module portability
Testability
Friday, May 21, 2010
Frameworks!Use them...now
Zend Framework
CakePHP
Symphony
Whatever
Friday, May 21, 2010
Code re-useOT Framework
Auth and ACL
Navigation
Themes
It’s an app shell
Friday, May 21, 2010
Re-use benefitsSetup time
Common methods
Upgradability
Friday, May 21, 2010
Last TipIntegrate best practices from
the start
flickr @enerva
Friday, May 21, 2010
Development is not just typing
Testing is a requirement, not a feature
Plan for usability and accessibility
Design then develop
Single-step deployment
Friday, May 21, 2010
Any questions?flickr @lwr
Friday, May 21, 2010
Rate me onJason Austin @jason_austin
http://www.jasonawesome.com
Review this talk at http://joind.in/1608
Friday, May 21, 2010