presentacion programador apasionado
TRANSCRIPT
ProgramadorApasionado
Tips paralograrunaexitosacarrera en Ingenieria de Software
Edwin Cruz
Twitter: @softr8
Yo soy….
• Engineering Manager
• Padre, Geek
• Home made ceviche and chicken wings specialist
• Platform & Senior Software Engineer (DevOps)
• Open source lover
Crowd Interactive….
RailsConfGolden Gate Ruby ConferenceSXSWLA Ruby ConfMagmaRailsRuby ConferenceCampus Party
blog.crowdint.comrails.mx
Rubyc
ProgramadoresFelices = ProgramadoresProductivos
PasiónvsObsesión
• Gente con unaarmonia en supasióntiene la habilidad de desconectarse de sutrabajocuandoeshora, transisionandofacilmente a susvidasfuerade la oficina, genteobsesiva no tieneesahabilidad.
Revisensuhistorialprofesional, ¿ha sidoremarcable?, ¿los recuerdancomo
el bueno?
Programadorporcoincidencia
• ¿Como consiguieronsu primer trabajo?
• ¿Fue lo queellosquerian?
• ¿Fueronexitosos?
• ¿Entendendieron el negocio?
El objetivo de cadanegocioeshacerdinero, no
esporamor (compas).
Nuncapodrásayudar al negociohastaqueentiendascomofuncio
na
Bien, entonces…¿Como puedoentender el negocio?
Asique…¿Cúales el problemamáscomún?
Simple programadorvsprogramadororientado
al negocio
Si todogira al rededor de un plan de carrera, ¿Cómopuedo planer mi propio
plan?
Eligiendo el mercado:RiesgovsRecompensa
Planeandotucarrera, ejemplo
• Analizatecnologias
– Lo nuevo de lo nuevo
– Establesoconservadoras
– Aquellas en suatardecer
Investiga el mercado actual
Inverte en aprender!
“No pidasqueteenseñen, veyaprendeporti
mismo!”
Encuentra a un Mentor
• Preguntar no essigno de debilidad
• Sigan los Alpha Geeks
Se un Mentor
• Aprendeenseñando
• “Todosaquellosqueevitan ser novatos son los únicosquenuncaharan nada nuevo”
Aprovechen el movimiento de redessociales!
“Get out of your room”No temanconocer a los expertos
La parte masimportante:Siemprepractiquen
¿Porquetengoqueinvertirtanto en practicar?
• Podrias ser parte de:
– Muchosprogramadoresquehacen el trabajo
– Programadoresrapidosquehacen el trabajo
– Programadoreslistosqueautomatizansutrabajo
¿Quirenpracticarporretos?
• www.topcoder.com
• www.projecteuler.net
• www.puzzlenode.com
• www.rubykoans.com
• www.codecademy.com
¿Quierespracticarpormercado?
• Resuelveejercicios de reclutamiento
¿Te gustaríapracticar con problemasreales a nivelmundial?
• Veyarregla bugs en proyectos open source• Fork
• Aprende
• Arregla
• Envia Pull request
• Have a beer
Nuncadejenoxidarsushabilidades, ejemplo: ExpresionesRegulares
Mientraspractiquen, respetenmetodologías!
Si no puedenseguir un proceso, no podranconstruir un producto
Especializarse no significa no concerotrascosas
Nuncareinventar la rueda, aprendan a reutilizarsolucionesimplementadas
Patrones de Diseño!
Siempresean el peor del equipo, perono lo literalmente
SiempreAdelante:Leyendola mente de otros
¿Es realmenteposible?
Registrensuslogros, ¿Mi jefesaben lo quehice/contribui?
¿Cuanto valor le dan a sutiempo?
Veamos…Traten de recordarcuandofueque se les ocurriolasmasingeniosa, creativaeimpr
ovisadasolución
Sean honestos, fallandobien: encontrarerroresrapidoycontiuamente
esunabuenaseñal de la buenacalidadquetendráel sofwarequedesarrollan.
No son tan especialescomopiensan“Les mostrareque sin mi no
puedenterminar el proyecto”
El caminoseguro al fracasoes:Decir “SI” a todo
Todosnecesitamosdormir
Practiquensushabilidades de comunicación.
¿Tusclientestienenmiedohablar con ustedes?
Y este….“GraMatic4 y la 0rtogrAfiA”
Diganle al mundoqueexisten!
• ¿Queseriamejorqueuncurriculumcuando se aplica a un nuevotrabajo?
Googlenuncaolvida¬¬’
¿Te gustaría ser el mejorprogramador?Controla el panico
Genteaburridarenuncia
No se enfoquen en terminar el proyecto, enfoquense en
hacerbiensuproyecto
"don't finish your ideas, release them" - John Lasseter
El poder de procesamiento en lascomputadoras se doblacada 18
meses
¿Quees lo queviene?
Top ten developer qualities
1.- Loves To Code
Top then developer qualities
2.-Gets Things Done
Top then developer qualities
3.- Continuously Refactors Code
Top then developer qualities
4.- Uses Design Patterns
Top then developer qualities
5.- Writes Tests
Top then developer qualities
6.- Leverages Existing Code
Top then developer qualities
7.- Focuses on Usability
Top then developer qualities
8.- Writes Maintainable Code
Top then developer qualities
9.-Can Code in Any Language
Top then developer qualities
10.- Knows Basic Computer Science
Have funSoftware
developmentesrealmentedivertido!!
Gracias!
Edwin Cruz [email protected]@twitter
gmailGithub
en todaspartes!
• Librosquedeberian leer– Passionate Programmer
– Clean Coder
– The Art of Agile Development
– Design Patterns
– Anti Patterns
– Any Management book