Successfully reported this slideshow.
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   2	
  
Jason	
  Lo(to	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   3	
  
§  Applica(on	
  Architect	
  @	
  MeetMe	
  
§  jas...
So	
  why	
  are	
  we	
  here?	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   4	
  
Learn	
  how	
  and	
  when	
  to	
  ...
Goals	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   5	
  
§  Learn	
  ways	
  to	
  successfully	
  apply	
  change	
  
...
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   6	
  
The	
  Project	
  
New	
  Profile	
  Page	
  Overview	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   7	
  
§  Exis(ng	
  Product:	
  Profile	
...
Rule	
  #1:	
  Develop	
  One	
  Product	
  At	
  A	
  Time	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   8	
  
A	
  new	...
Samuel	
  L.	
  Jackson	
  said	
  it	
  best…	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   9	
  
“We	
  have	
  all	
  ...
Rule	
  #1:	
  Develop	
  One	
  Product	
  At	
  A	
  Time	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   10	
  
“They	
 ...
Rule	
  #1:	
  Develop	
  One	
  Product	
  At	
  A	
  Time	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   11	
  
Some(mes...
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   12	
  
Rule	
  #2:	
  Encourage	
  a	
  Minimal	
  Viable	
  Product	
  
The	
  Not-­‐So	
  Minimal	
  
Viable	
  Product	
  
†	
  Thank	
  you	
  Thesaurus	
  for	
  helping	
  me	
  come	
  up	...
Rule	
  #2:	
  Encourage	
  a	
  Minimal	
  Viable	
  Product	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   14	
  
If	
  ...
Rule	
  #2:	
  Encourage	
  a	
  Minimal	
  Viable	
  Product	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   15	
  
Less	
...
Rule	
  #2:	
  Encourage	
  a	
  Minimal	
  Viable	
  Product	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   16	
  
Need	
...
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   17	
  
GeVng	
  Lost	
  in	
  a	
  Changing	
  Process	
  
Rule	
  #3:	
  Don’t	
  Adopt	
  an	
  “Agile”	
  Process	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   18	
  
“If	
  ade...
Rule	
  #3:	
  Don’t	
  Adopt	
  an	
  “Agile”	
  Process	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   19	
  
Agile	
  h...
Rule	
  #3:	
  Don’t	
  Adopt	
  an	
  “Agile”	
  Process	
  
Mee(ng	
  my	
  contractual	
  obliga(ons	
  =)	
   20	
  
D...
Rule	
  #4:	
  You	
  Aren’t	
  the	
  Center	
  of	
  the	
  World	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   21	
  
...
Rule	
  #4:	
  You	
  Aren’t	
  the	
  Center	
  of	
  the	
  World	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   22	
  
...
Rule	
  #4:	
  You	
  Aren’t	
  the	
  Center	
  of	
  the	
  World	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   23	
  
...
Rule	
  #5:	
  Don’t	
  make	
  it	
  up	
  as	
  you	
  go	
  along	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   24	
  ...
Rule	
  #5:	
  Don’t	
  make	
  it	
  up	
  as	
  you	
  go	
  along	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   25	
  ...
Rule	
  #5:	
  Don’t	
  make	
  it	
  up	
  as	
  you	
  go	
  along	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   26	
  ...
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   27	
  
Changes	
  in	
  Technology	
  
“Some	
  people,	
  when	
  confronted	
...
Rule	
  #6:	
  Treat	
  Technology	
  Change	
  as	
  an	
  Op(miza(on	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   28	
...
Rule	
  #6:	
  Treat	
  Technology	
  Change	
  as	
  an	
  Op(miza(on	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   29	
...
Rule	
  #6:	
  Treat	
  Technology	
  Change	
  as	
  an	
  Op(miza(on	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   30	
...
Rule	
  #7:	
  Prefer	
  Proven	
  Technologies,	
  Seek	
  New	
  Solu(ons	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
  ...
Rule	
  #7:	
  Prefer	
  Proven	
  Technologies,	
  Seek	
  New	
  Solu(ons	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
  ...
Rules	
  Recap	
  
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   33	
  
1. Develop	
  one	
  product	
  at	
  a	
  (me	
  
2....
Jason	
  Lo(to	
  @	
  MeetMe	
  Corp.	
   34	
  
Thank	
  you	
  
	
  
@jasonlo(to	
  
How we killed our process, technology stack, and assumptions – and survived
Upcoming SlideShare
Loading in …5
×

How we killed our process, technology stack, and assumptions – and survived

679 views

Published on

How do you introduce new ways of building products without stopping development? MeetMe.com's Jason Lotito will reveal the challenges his team encountered while changing their development process, including the perils of adding new technology to the stack. He'll also describe how the team moved from a slower development process to a faster, more efficient one — practically overnight.

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

How we killed our process, technology stack, and assumptions – and survived

  1. 1. Jason  Lo(to  @  MeetMe  Corp.   2  
  2. 2. Jason  Lo(to   Jason  Lo(to  @  MeetMe  Corp.   3   §  Applica(on  Architect  @  MeetMe   §  jasonlo(to  everywhere!   §  Spent  10  years  doing  credit  card   processing  (  PCI  =(  )   §  Now  I’m  in  social  (  =)  )    
  3. 3. So  why  are  we  here?   Jason  Lo(to  @  MeetMe  Corp.   4   Learn  how  and  when  to  change  your   §  Processes   §  Technologies   When  you  have  to  change  your   §  Product  
  4. 4. Goals   Jason  Lo(to  @  MeetMe  Corp.   5   §  Learn  ways  to  successfully  apply  change   §  Save  yourself  pain  and  suffering   §  Spot  warning  signs  before  they  become  a  problem   §  Dodge  bullets  
  5. 5. Jason  Lo(to  @  MeetMe  Corp.   6   The  Project  
  6. 6. New  Profile  Page  Overview   Jason  Lo(to  @  MeetMe  Corp.   7   §  Exis(ng  Product:  Profile   §  One  of  the  most  popular  pages   §  Gateway  to  a  user   §  Lots  of  things  happening   §  Lots  of  technology   –  PHP,  PostgreSQL,  RabbitMQ,   JavaScript  libraries,  messaging   system   –  3rd  party  adver(sing  dependencies,   tracking  systems   –  Lots  of  legacy  stats,  events,  products   s(ll  in  use  
  7. 7. Rule  #1:  Develop  One  Product  At  A  Time   Jason  Lo(to  @  MeetMe  Corp.   8   A  new  product  is  just  1  new  product.   A  rewrite  is  2  products.    
  8. 8. Samuel  L.  Jackson  said  it  best…   Jason  Lo(to  @  MeetMe  Corp.   9   “We  have  all  the  problems  of  a   major  theme  park  and  a  major   zoo,  and  the  computers  aren’t   even  on  their  feet  yet.”     –  Dr.  John  Arnold,  Jurassic  Park  
  9. 9. Rule  #1:  Develop  One  Product  At  A  Time   Jason  Lo(to  @  MeetMe  Corp.   10   “They  did  it  by  making  the  single  worst  strategic  mistake     that  any  sodware  company  can  make:  They  decided  to   rewrite  the  code  from  scratch.”     –  Joel  Spolsky  on  Netscape  
  10. 10. Rule  #1:  Develop  One  Product  At  A  Time   Jason  Lo(to  @  MeetMe  Corp.   11   Some(mes  you  need  to  rewrite  because  you  are  adop(ng  new   technology  for  a  new  plaeorm  or  performance  reasons.     Your  ins(nct  should  be  to  reuse  code.    
  11. 11. Jason  Lo(to  @  MeetMe  Corp.   12   Rule  #2:  Encourage  a  Minimal  Viable  Product  
  12. 12. The  Not-­‐So  Minimal   Viable  Product   †  Thank  you  Thesaurus  for  helping  me  come  up  with  vexing  so  I  could  make  a  joke  with  MVP  using  Mountain  and  Paper   13   So,  you’ve  been  given  a  spec  for   an  “MVP”,  which  apparently   stands  for  a  Mountain  of   Vexing†  Paper.  
  13. 13. Rule  #2:  Encourage  a  Minimal  Viable  Product   Jason  Lo(to  @  MeetMe  Corp.   14   If  you  want  all  the  features  of  your  old   product,  why  are  you  rewri(ng  it?  
  14. 14. Rule  #2:  Encourage  a  Minimal  Viable  Product   Jason  Lo(to  @  MeetMe  Corp.   15   Less  is  More   More  opportunity  to  adapt  to  new  processes   More  (me  to  learn  new  technologies  
  15. 15. Rule  #2:  Encourage  a  Minimal  Viable  Product   Jason  Lo(to  @  MeetMe  Corp.   16   Need  help  pruning  features?   If  a  feature  takes  1-­‐month  to  build,     would  you  delay  product  launch  to  get  it  in?  
  16. 16. Jason  Lo(to  @  MeetMe  Corp.   17   GeVng  Lost  in  a  Changing  Process  
  17. 17. Rule  #3:  Don’t  Adopt  an  “Agile”  Process   Jason  Lo(to  @  MeetMe  Corp.   18   “If  ader  15  minutes,     you  are  s(ll  in  your  standup,   here’s  your  sign.”  –  if  Jeff  Foxworthy  was  a   programmer  
  18. 18. Rule  #3:  Don’t  Adopt  an  “Agile”  Process   Jason  Lo(to  @  MeetMe  Corp.   19   Agile  has  real  meaning!   You  can’t  just  make  parts  of  the   process  up  as  you  go  along.   You  do  that  when  you  walk  blindly.  
  19. 19. Rule  #3:  Don’t  Adopt  an  “Agile”  Process   Mee(ng  my  contractual  obliga(ons  =)   20   Don’t  throw   out  Jira     Have  a  reason  for  change  
  20. 20. Rule  #4:  You  Aren’t  the  Center  of  the  World   Jason  Lo(to  @  MeetMe  Corp.   21   “You  are  not  special.  You   are  not  a  beau(ful  or   unique  snowflake.”   -­‐  Tyler  Durden,  Fight  Club  
  21. 21. Rule  #4:  You  Aren’t  the  Center  of  the  World   Jason  Lo(to  @  MeetMe  Corp.   22   If  you  are  crea(ng  process  alone…   Without  QA,  project  managers,  product  owners…   You  will  forget  things.     And  you  now  own  something  else,  adding  even  more  to  your  workload.  
  22. 22. Rule  #4:  You  Aren’t  the  Center  of  the  World   Jason  Lo(to  @  MeetMe  Corp.   23   Involve  the  team  from  the  beginning.     Share  responsibili(es.     Automate  Everything  &  DRY  
  23. 23. Rule  #5:  Don’t  make  it  up  as  you  go  along   Jason  Lo(to  @  MeetMe  Corp.   24   “We’ll  make  it  up  as  we  go  along.”   -­‐  Me,  at  some  point  before  the  project  started  
  24. 24. Rule  #5:  Don’t  make  it  up  as  you  go  along   Jason  Lo(to  @  MeetMe  Corp.   25   A  process  should  mean  less  work.   A  new  process  is  like  a  new  product.   Crea(ng  a  new  process  violates  rule  #1.   Develop  one  product  at  a  (me.  
  25. 25. Rule  #5:  Don’t  make  it  up  as  you  go  along   Jason  Lo(to  @  MeetMe  Corp.   26   “There’s  never  enough  (me  to  do  it   right,  but  there’s  always  enough   (me  to  do  it  over.”     –  Jack  Bergman  
  26. 26. Jason  Lo(to  @  MeetMe  Corp.   27   Changes  in  Technology   “Some  people,  when  confronted  with  a  problem,  think  "I  know,  I'll  use  regular   expressions."  Now  they  have  two  problems.”   -­‐  Jamie  Zawinski  
  27. 27. Rule  #6:  Treat  Technology  Change  as  an  Op(miza(on   Jason  Lo(to  @  MeetMe  Corp.   28   Your  exis(ng  stack  got  you  there   It’s  not  old,  it’s  baele-­‐tested!  
  28. 28. Rule  #6:  Treat  Technology  Change  as  an  Op(miza(on   Jason  Lo(to  @  MeetMe  Corp.   29   Validate  Changes   You  do  it  for  Product   You  do  it  for  Process   You  do  it  for  Code     We  should  do  it  for     Technology  Choices  
  29. 29. Rule  #6:  Treat  Technology  Change  as  an  Op(miza(on   Jason  Lo(to  @  MeetMe  Corp.   30   “We  should  forget  about  small  efficiencies,  say  about   97%  of  the  Fme:  premature  op6miza6on  is  the  root  of   all  evil”  –  Donald  Knuth,  or  Tony  Hoare,  or  not?  
  30. 30. Rule  #7:  Prefer  Proven  Technologies,  Seek  New  Solu(ons   Jason  Lo(to  @  MeetMe  Corp.   31   “Before  adop(ng  new  technology,  Toyota   will  go  to  great  lengths  to  analyze  the  impact   it  may  have  on  exis(ng  processes.”   -­‐  Jeffrey  Liker,  The  Toyota  Way  
  31. 31. Rule  #7:  Prefer  Proven  Technologies,  Seek  New  Solu(ons   Jason  Lo(to  @  MeetMe  Corp.   32   What  problem  does  the  new  solu(on  solve  that   the  proven  technology  not?     Is  that  problem  real?     Adopt  new  technology  with  small  steps.  
  32. 32. Rules  Recap   Jason  Lo(to  @  MeetMe  Corp.   33   1. Develop  one  product  at  a  (me   2. Encourage  a  Minimal  Viable  Product   3. Don’t  adopt  an  “agile”  process   4. You  aren’t  the  center  of  the  world   5. Don’t  make  it  up  as  you  go  along   6. Treat  technology  changes  as  an  op(miza(on   7. Prefer  proven  technologies,  seek  new  solu(ons  
  33. 33. Jason  Lo(to  @  MeetMe  Corp.   34   Thank  you     @jasonlo(to  

×