29
Cómo trabajar con programadores Taller Emprending 2015 Martin Becerra @martinb35 Nicolás Morandi

Como trabajar con programadores (Taller Emprending)

Embed Size (px)

Citation preview

Page 1: Como trabajar con programadores (Taller Emprending)

Cómo trabajar con programadoresTaller Emprending 2015

Martin Becerra@martinb35

Nicolás Morandi

Page 2: Como trabajar con programadores (Taller Emprending)
Page 3: Como trabajar con programadores (Taller Emprending)

● Experiencias?

● Resultados?

● Problemas?

● Proyectos?

Algunas encuestas

Page 4: Como trabajar con programadores (Taller Emprending)

Antes de pensar en un programador para tu app o sitio web...

● Experimentar.● Crear prototipos con tus

conocimientos.● ¡Validar!

Page 5: Como trabajar con programadores (Taller Emprending)

Definir un Mínimo Producto Viable (MVP)

Page 6: Como trabajar con programadores (Taller Emprending)

Cómo definir un producto

● Explicar problema, solución y target de usuarios.

● Buscar competidores. Ventajas y desventajas.

● Mapa del producto. Diagramas de flujo.

● Bocetos (moqups.com).

● Documentar (escribir, mucho!).

● Ejemplificar con sitios existentes.

● Casos de uso.

Page 7: Como trabajar con programadores (Taller Emprending)

Lenguaje ≠ Framework ≠ CMS

Page 8: Como trabajar con programadores (Taller Emprending)

Tecnologías y tendencias

Web front-end● HTML

● CSS

● JavaScript

○ jQuery

○ AngularJS

● Bootstrap

Page 9: Como trabajar con programadores (Taller Emprending)

Tecnologías y tendencias

Page 10: Como trabajar con programadores (Taller Emprending)

Tecnologías y tendencias

Back-end● PHP

○ Laravel

○ Symfony

○ CodeIgniter

● Phyton

○ Django

● Ruby

○ Ruby on Rails

● .NET

● Java

○ Spring MVC

● Scala, Clojure, Go, etc..

Page 11: Como trabajar con programadores (Taller Emprending)

Tecnologías y tendencias

Mobile● Phonegap/Cordova

● Objective-C / Swift (IOS)

● Android

● Windows Phone

● Ionic

Page 12: Como trabajar con programadores (Taller Emprending)

Tecnologías y tendencias

Content Management Systems● Wordpress

● Drupal

● Joomla

● RefineryCMS

● Magento

Page 13: Como trabajar con programadores (Taller Emprending)

Lenguajes

Page 14: Como trabajar con programadores (Taller Emprending)

Metodologías de desarrollo

Tradicionales Ágiles

Page 15: Como trabajar con programadores (Taller Emprending)

ÁgilesTradicionales

● Proceso lineal● Modelo rígido e

inflexible● Alto costo de cambio● Foco en Planificación y

procesos● Tiempos y presupuesto

predecibles

● Iteraciones cortas● Modelo flexible● Costo de cambio

reducido● Foco en Software de

alta calidad● Tiempos y presupuesto

difícil de predecir

Page 16: Como trabajar con programadores (Taller Emprending)

Metodologías ágiles

● Iteraciones cortas

● Fácil de pivotear

● Prototipos o desarrollos incrementales

● Evaluación constante del producto y las

prioridadesStartups like this

Page 17: Como trabajar con programadores (Taller Emprending)

Metodologías ágiles: Scrum

● Metodología ágil y flexible para gestionar el desarrollo de software

● Reconoce que los requerimientos del cliente pueden cambiar.

Page 18: Como trabajar con programadores (Taller Emprending)

Comunicación

● Ser claros y concisos

● Definir horarios de reuniones o llamados

● Comunicarse frecuentemente

● Probar distintas herramientas y canales

Page 19: Como trabajar con programadores (Taller Emprending)

Herramientas de comunicación

Para manejar proyectos:- Basecamp- Trello- Asana- Teamwork

Para manejar proyectos de desarrollo (+ avanzado):- Jira- PivotalTracker- Assembla

Page 20: Como trabajar con programadores (Taller Emprending)

Vocabulario

Page 21: Como trabajar con programadores (Taller Emprending)

Buscando programadores1. Recomendaciones de conocidos

2. Portales de trabajos freelance

- Workana- Nubelo- oDesk.- Freelancer.com

3. Comunidades y grupos de lenguajes específicos.

- http://grupophp.com.ar/- http://python.org.ar/- Meetups

4. LinkedIn

5. Universidades - Escuelas de desarrollo

- coderhouse.com- itmaster.com.ar

6. Agencias de desarrollo

- Latinbrain.com

7. Consultoras RRHH de IT

- XimpleHR

8. Toptal

Page 22: Como trabajar con programadores (Taller Emprending)

Entrevistando programadores

● Pedir portfolio. Ver trabajos realizados.

● Plantear un problema y preguntar cómo lo resolvería.

● Reputación online (LinkedIn, GitHub, StackOverflow, oDesk, Workana).

Page 23: Como trabajar con programadores (Taller Emprending)

Identificando buenos programadores

● ¿Es inteligente? ○ ¿Es apasionado? ¿Tiene opiniones propias?

○ ¿Es curioso?

○ ¿Aprende? ¿Se comunica bien?

● ¿Hace cosas?○ ¿Se especializó en algo?

● ¿Quiero trabajar con esa persona?

Page 24: Como trabajar con programadores (Taller Emprending)

Una buena receta...

1. Reducir la gran idea a una versión 1.0.

2. Crear una descripción simple.

3. Describir detalladamente el recorrido por todo el sistema.

4. Separar el proyecto en hitos.

Page 25: Como trabajar con programadores (Taller Emprending)

Una buena receta...

5. Hacer el primer hito, una proyecto independiente.

6. Postearlo en portales de trabajo (oDesk, Workana, Nubelo, etc).

7. Contratar varios candidatos para el primer hito.

8. Continuar el proyecto con el que más te gustó.

Page 26: Como trabajar con programadores (Taller Emprending)

Tips

● Mantener a los programadores motivados● Dar especificaciones detalladas● Cambios de último minuto● Planificar reuniones● Feedback constante● Recomendaciones técnicas● Medios de comunicación

Page 27: Como trabajar con programadores (Taller Emprending)

Resumen

● Validar con tus propias manos con Lean Startup.

● Reducir una versión MVP al mínimo.● Elegir programador, no tecnología.● Aprender de las metodologías ágiles.● Trabajar con programadores requiere

mucho trabajo.

Page 28: Como trabajar con programadores (Taller Emprending)

Referencias- http://quickbooks.intuit.com/r/online-and-digital-products/terms-know-working-programmers- http://rudyonweb.net/cms-framework-cmf/- http://mashable.com/2015/01/18/programming-languages-2015/- http://qph.is.quoracdn.net/main-qimg-b0d6b2d98ae66f82b2ff77a6c02d099c?convert_to_webp=true- http://www.aaronsw.com/weblog/hiring- https://signalvnoise.com/posts/2628-how-to-hire-a-programmer-when-youre-not-a-programmer- http://www.quora.com/How-does-a-business-person-hire-a-good-developer-programmer-engineer-on-eLance-or-oDesk- http://programmers.stackexchange.com/questions/33816/how-to-recognize-a-good-programmer- https://sivers.org/how2hire- http://en.wikipedia.org/wiki/Scrum_%28software_development%29- https://www.scrum.org/- http://quickbooks.intuit.com/r/online-and-digital-products/terms-know-working-programmers- http://www.guessmate.me/blog/2012/10/10-commandments-for-attracting-and-keeping-great-developers/- http://www.agilemanifesto.org/iso/es/manifesto.html- http://www.agilemanifesto.org/iso/es/principles.html- https://blog.udemy.com/agile-vs-waterfall/- http://agilemethodology.org/- http://www.quora.com/How-do-I-choose-which-programming-languages-for-my-websites-startup

Page 29: Como trabajar con programadores (Taller Emprending)

Gracias!

Martin Becerra@[email protected]

Nicolás Morandi@nicolasmorandi

[email protected]

¿Preguntas?