SlideShare ist ein Scribd-Unternehmen logo
1 von 60
Downloaden Sie, um offline zu lesen
ProgramadorApasionado

Tips paralograrunaexitosacarrera en
       Ingenieria de Software


                                      Edwin Cruz
                            edwin@crowdint.com
                                 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….
Presentacion programador apasionado
RailsConf
 Golden Gate Ruby Conference
 SXSW
 LA Ruby Conf
 MagmaRails
 Ruby Conference
 Campus Party
                          blog.crowdint.com
                                    rails.mx
                                      Rubyc


ProgramadoresFelices = ProgramadoresProductivos
PasiónvsObsesión
• Gente con unaarmonia en supasióntiene la
  habilidad de desconectarse de
  sutrabajocuandoeshora, transisionandofacilm
  ente 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, ejem
     plo: ExpresionesRegulares
Mientraspractiquen, respetenmetodol
               ogí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, pero
         no 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 fun
           Software
developmentesrealmentedivertido!!
Gracias!
• Librosquedeberian leer
    –   Passionate Programmer
    –   Clean Coder
    –   The Art of Agile Development
    –   Design Patterns
    –   Anti Patterns
    –   Any Management book

                                        Edwin Cruz edwin@crowdint.com
                                                         softr8@twitter
                                                                 gmail
                                                                Github
                                                        en todaspartes!

Weitere ähnliche Inhalte

Was ist angesagt?

Universidad Nestlé - Google - Herramientas del futuro hoy
Universidad Nestlé - Google - Herramientas del futuro hoyUniversidad Nestlé - Google - Herramientas del futuro hoy
Universidad Nestlé - Google - Herramientas del futuro hoyCarlos Toxtli
 
Primeras luchas de un joven programador
Primeras luchas de un joven programadorPrimeras luchas de un joven programador
Primeras luchas de un joven programadorRené Sandoval
 
Charla del primer GinAndUX [Pitch inicial y herramientas de prototipado]
Charla del primer GinAndUX [Pitch inicial y herramientas de prototipado]Charla del primer GinAndUX [Pitch inicial y herramientas de prototipado]
Charla del primer GinAndUX [Pitch inicial y herramientas de prototipado]Jorge Galindo Cruces
 
01. Taller UX - Prototipado Rápido: Actividades
01. Taller UX - Prototipado Rápido: Actividades01. Taller UX - Prototipado Rápido: Actividades
01. Taller UX - Prototipado Rápido: ActividadesFlavia Ibañez
 
Designer vs Front-end - DrupalCampES 2018 Alicante
Designer vs Front-end - DrupalCampES 2018 AlicanteDesigner vs Front-end - DrupalCampES 2018 Alicante
Designer vs Front-end - DrupalCampES 2018 AlicanteLa Drupalera
 
Taller UX: Diseño visual - IxDA Mendoza
Taller UX: Diseño visual - IxDA MendozaTaller UX: Diseño visual - IxDA Mendoza
Taller UX: Diseño visual - IxDA MendozaFlavia Ibañez
 

Was ist angesagt? (6)

Universidad Nestlé - Google - Herramientas del futuro hoy
Universidad Nestlé - Google - Herramientas del futuro hoyUniversidad Nestlé - Google - Herramientas del futuro hoy
Universidad Nestlé - Google - Herramientas del futuro hoy
 
Primeras luchas de un joven programador
Primeras luchas de un joven programadorPrimeras luchas de un joven programador
Primeras luchas de un joven programador
 
Charla del primer GinAndUX [Pitch inicial y herramientas de prototipado]
Charla del primer GinAndUX [Pitch inicial y herramientas de prototipado]Charla del primer GinAndUX [Pitch inicial y herramientas de prototipado]
Charla del primer GinAndUX [Pitch inicial y herramientas de prototipado]
 
01. Taller UX - Prototipado Rápido: Actividades
01. Taller UX - Prototipado Rápido: Actividades01. Taller UX - Prototipado Rápido: Actividades
01. Taller UX - Prototipado Rápido: Actividades
 
Designer vs Front-end - DrupalCampES 2018 Alicante
Designer vs Front-end - DrupalCampES 2018 AlicanteDesigner vs Front-end - DrupalCampES 2018 Alicante
Designer vs Front-end - DrupalCampES 2018 Alicante
 
Taller UX: Diseño visual - IxDA Mendoza
Taller UX: Diseño visual - IxDA MendozaTaller UX: Diseño visual - IxDA Mendoza
Taller UX: Diseño visual - IxDA Mendoza
 

Andere mochten auch

Presentacion Programador Apasionado
Presentacion Programador ApasionadoPresentacion Programador Apasionado
Presentacion Programador ApasionadoEdwin Cruz
 
Api development with rails
Api development with railsApi development with rails
Api development with railsEdwin Cruz
 
Las apis como modelo de negocio
Las apis como modelo de negocioLas apis como modelo de negocio
Las apis como modelo de negocioCloudAppi
 
Fase 1 enyo_huetto
Fase 1 enyo_huettoFase 1 enyo_huetto
Fase 1 enyo_huettoEnyoHuetto
 
innovaciones en el desarrollo sustentable
innovaciones en el desarrollo sustentableinnovaciones en el desarrollo sustentable
innovaciones en el desarrollo sustentableTecnologiainnovacion
 
Mente humana y los procesos psicologicos
Mente humana y los procesos psicologicosMente humana y los procesos psicologicos
Mente humana y los procesos psicologicosEuler Ruiz
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
 
El diseño orientado a flujo de objetos
El  diseño orientado a flujo  de objetosEl  diseño orientado a flujo  de objetos
El diseño orientado a flujo de objetoshome
 
Governo Aberto - Amérca Latina
Governo Aberto - Amérca LatinaGoverno Aberto - Amérca Latina
Governo Aberto - Amérca LatinaHudson Augusto
 
Lenguaje unificado de modelado
Lenguaje unificado de modeladoLenguaje unificado de modelado
Lenguaje unificado de modeladowlady512
 
C:\Documents And Settings\Uleam\Mis Documentos\Lenguaje Unificado De Modelado...
C:\Documents And Settings\Uleam\Mis Documentos\Lenguaje Unificado De Modelado...C:\Documents And Settings\Uleam\Mis Documentos\Lenguaje Unificado De Modelado...
C:\Documents And Settings\Uleam\Mis Documentos\Lenguaje Unificado De Modelado...japake
 

Andere mochten auch (20)

Presentacion Programador Apasionado
Presentacion Programador ApasionadoPresentacion Programador Apasionado
Presentacion Programador Apasionado
 
Api
ApiApi
Api
 
Testing Ruby on Rails (spanish)
Testing Ruby on Rails (spanish)Testing Ruby on Rails (spanish)
Testing Ruby on Rails (spanish)
 
Api development with rails
Api development with railsApi development with rails
Api development with rails
 
Las apis como modelo de negocio
Las apis como modelo de negocioLas apis como modelo de negocio
Las apis como modelo de negocio
 
Que es api
Que es apiQue es api
Que es api
 
Fase 1 enyo_huetto
Fase 1 enyo_huettoFase 1 enyo_huetto
Fase 1 enyo_huetto
 
davids Tissues
davids Tissuesdavids Tissues
davids Tissues
 
I portafolio
I portafolioI portafolio
I portafolio
 
innovaciones en el desarrollo sustentable
innovaciones en el desarrollo sustentableinnovaciones en el desarrollo sustentable
innovaciones en el desarrollo sustentable
 
Pentur 2021
Pentur 2021Pentur 2021
Pentur 2021
 
Mente humana y los procesos psicologicos
Mente humana y los procesos psicologicosMente humana y los procesos psicologicos
Mente humana y los procesos psicologicos
 
Actividad 4 wiki
Actividad  4 wikiActividad  4 wiki
Actividad 4 wiki
 
Funciones en programación
Funciones en programaciónFunciones en programación
Funciones en programación
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
 
Vane
VaneVane
Vane
 
El diseño orientado a flujo de objetos
El  diseño orientado a flujo  de objetosEl  diseño orientado a flujo  de objetos
El diseño orientado a flujo de objetos
 
Governo Aberto - Amérca Latina
Governo Aberto - Amérca LatinaGoverno Aberto - Amérca Latina
Governo Aberto - Amérca Latina
 
Lenguaje unificado de modelado
Lenguaje unificado de modeladoLenguaje unificado de modelado
Lenguaje unificado de modelado
 
C:\Documents And Settings\Uleam\Mis Documentos\Lenguaje Unificado De Modelado...
C:\Documents And Settings\Uleam\Mis Documentos\Lenguaje Unificado De Modelado...C:\Documents And Settings\Uleam\Mis Documentos\Lenguaje Unificado De Modelado...
C:\Documents And Settings\Uleam\Mis Documentos\Lenguaje Unificado De Modelado...
 

Ähnlich wie Presentacion programador apasionado

Como trabajar con programadores (Taller Emprending)
Como trabajar con programadores (Taller Emprending)Como trabajar con programadores (Taller Emprending)
Como trabajar con programadores (Taller Emprending)Martin Becerra
 
Presentacion scratch
Presentacion scratchPresentacion scratch
Presentacion scratchhammad rafqat
 
Ya estoy aprendiendo a programar ¿y ahora?
Ya estoy aprendiendo a programar ¿y ahora?Ya estoy aprendiendo a programar ¿y ahora?
Ya estoy aprendiendo a programar ¿y ahora?Carlos Toxtli
 
Devs&Designers - Los que se pelean se desean
Devs&Designers - Los que se pelean se deseanDevs&Designers - Los que se pelean se desean
Devs&Designers - Los que se pelean se deseanFrancisco Aranda
 
Consejos y el camino del desarrollador de software
Consejos y el camino del desarrollador de softwareConsejos y el camino del desarrollador de software
Consejos y el camino del desarrollador de softwareVíctor Leonel Orozco López
 
Presentacion lleva tu negocio a la web
Presentacion lleva tu negocio a la web Presentacion lleva tu negocio a la web
Presentacion lleva tu negocio a la web Edison Monsalve
 
La autocrítica como hábito en el arte del cultivo de profesionales en software
La autocrítica como hábito en el arte del cultivo de profesionales en softwareLa autocrítica como hábito en el arte del cultivo de profesionales en software
La autocrítica como hábito en el arte del cultivo de profesionales en softwareSoftware Guru
 
Ingeniera de software
Ingeniera de softwareIngeniera de software
Ingeniera de softwareIHCLab UCOL
 
Como prototipar MAL una aplicación. La importancia del Wireframe
Como prototipar MAL una aplicación. La importancia del WireframeComo prototipar MAL una aplicación. La importancia del Wireframe
Como prototipar MAL una aplicación. La importancia del WireframeJorge Galindo Cruces
 
Como prototipar MAL una aplicación. La importancia del Wireframe
Como prototipar MAL una aplicación. La importancia del WireframeComo prototipar MAL una aplicación. La importancia del Wireframe
Como prototipar MAL una aplicación. La importancia del Wireframebetabeers
 
Onboarding tecnológico: Pasar los niveles del juego
Onboarding tecnológico: Pasar los niveles del juegoOnboarding tecnológico: Pasar los niveles del juego
Onboarding tecnológico: Pasar los niveles del juegoRoberto Canales
 
Cómo prototipar y reclutar para un test a bajo costo
Cómo prototipar y reclutar para un test a bajo costoCómo prototipar y reclutar para un test a bajo costo
Cómo prototipar y reclutar para un test a bajo costoSol Velazquez
 
El diseñador a medias (con notas). UX Spain 2013
El diseñador a medias (con notas). UX Spain 2013 El diseñador a medias (con notas). UX Spain 2013
El diseñador a medias (con notas). UX Spain 2013 qweos
 
Antipatrones de desarrollo de software
Antipatrones de desarrollo de softwareAntipatrones de desarrollo de software
Antipatrones de desarrollo de softwarePablo Bouzada
 

Ähnlich wie Presentacion programador apasionado (20)

Como ser programador
Como ser programadorComo ser programador
Como ser programador
 
Como trabajar con programadores (Taller Emprending)
Como trabajar con programadores (Taller Emprending)Como trabajar con programadores (Taller Emprending)
Como trabajar con programadores (Taller Emprending)
 
Presentacion scratch
Presentacion scratchPresentacion scratch
Presentacion scratch
 
Ya estoy aprendiendo a programar ¿y ahora?
Ya estoy aprendiendo a programar ¿y ahora?Ya estoy aprendiendo a programar ¿y ahora?
Ya estoy aprendiendo a programar ¿y ahora?
 
Devs&Designers - Los que se pelean se desean
Devs&Designers - Los que se pelean se deseanDevs&Designers - Los que se pelean se desean
Devs&Designers - Los que se pelean se desean
 
Consejos y el camino del desarrollador de software
Consejos y el camino del desarrollador de softwareConsejos y el camino del desarrollador de software
Consejos y el camino del desarrollador de software
 
Presentacion lleva tu negocio a la web
Presentacion lleva tu negocio a la web Presentacion lleva tu negocio a la web
Presentacion lleva tu negocio a la web
 
La autocrítica como hábito en el arte del cultivo de profesionales en software
La autocrítica como hábito en el arte del cultivo de profesionales en softwareLa autocrítica como hábito en el arte del cultivo de profesionales en software
La autocrítica como hábito en el arte del cultivo de profesionales en software
 
Ingeniera de software
Ingeniera de softwareIngeniera de software
Ingeniera de software
 
Como prototipar MAL una aplicación. La importancia del Wireframe
Como prototipar MAL una aplicación. La importancia del WireframeComo prototipar MAL una aplicación. La importancia del Wireframe
Como prototipar MAL una aplicación. La importancia del Wireframe
 
Como prototipar MAL una aplicación. La importancia del Wireframe
Como prototipar MAL una aplicación. La importancia del WireframeComo prototipar MAL una aplicación. La importancia del Wireframe
Como prototipar MAL una aplicación. La importancia del Wireframe
 
Onboarding tecnológico: Pasar los niveles del juego
Onboarding tecnológico: Pasar los niveles del juegoOnboarding tecnológico: Pasar los niveles del juego
Onboarding tecnológico: Pasar los niveles del juego
 
Frontend Developer
Frontend DeveloperFrontend Developer
Frontend Developer
 
Exposicion Iutla
Exposicion IutlaExposicion Iutla
Exposicion Iutla
 
El arte de programar
El arte de programarEl arte de programar
El arte de programar
 
Cómo prototipar y reclutar para un test a bajo costo
Cómo prototipar y reclutar para un test a bajo costoCómo prototipar y reclutar para un test a bajo costo
Cómo prototipar y reclutar para un test a bajo costo
 
El diseñador a medias (con notas). UX Spain 2013
El diseñador a medias (con notas). UX Spain 2013 El diseñador a medias (con notas). UX Spain 2013
El diseñador a medias (con notas). UX Spain 2013
 
Programmer visions
Programmer visionsProgrammer visions
Programmer visions
 
La programación.pptx
La programación.pptxLa programación.pptx
La programación.pptx
 
Antipatrones de desarrollo de software
Antipatrones de desarrollo de softwareAntipatrones de desarrollo de software
Antipatrones de desarrollo de software
 

Mehr von Edwin Cruz

Codigo Escalable WDT
Codigo Escalable WDTCodigo Escalable WDT
Codigo Escalable WDTEdwin Cruz
 
SGCE 2015 - eCommerce platforms
SGCE 2015 - eCommerce platformsSGCE 2015 - eCommerce platforms
SGCE 2015 - eCommerce platformsEdwin Cruz
 
Devops with ansible
Devops with ansibleDevops with ansible
Devops with ansibleEdwin Cruz
 
Containers in 5... 9 minutes
Containers in 5... 9 minutesContainers in 5... 9 minutes
Containers in 5... 9 minutesEdwin Cruz
 
Chilango Rails Ecommerce Lightning talk
Chilango Rails Ecommerce Lightning talkChilango Rails Ecommerce Lightning talk
Chilango Rails Ecommerce Lightning talkEdwin Cruz
 
Home made ceviche
Home made cevicheHome made ceviche
Home made cevicheEdwin Cruz
 
Api's and ember js
Api's and ember jsApi's and ember js
Api's and ember jsEdwin Cruz
 
FSL Vallarta, mejorando el rendimiento de las aplicaciones web
FSL Vallarta, mejorando el rendimiento de las aplicaciones webFSL Vallarta, mejorando el rendimiento de las aplicaciones web
FSL Vallarta, mejorando el rendimiento de las aplicaciones webEdwin Cruz
 
MagmaRails - Passionate Programmer
MagmaRails - Passionate ProgrammerMagmaRails - Passionate Programmer
MagmaRails - Passionate ProgrammerEdwin Cruz
 
Migrando Rails Apps entre Cloud y Bare Metal Servers
Migrando Rails Apps entre Cloud y Bare Metal ServersMigrando Rails Apps entre Cloud y Bare Metal Servers
Migrando Rails Apps entre Cloud y Bare Metal ServersEdwin Cruz
 

Mehr von Edwin Cruz (10)

Codigo Escalable WDT
Codigo Escalable WDTCodigo Escalable WDT
Codigo Escalable WDT
 
SGCE 2015 - eCommerce platforms
SGCE 2015 - eCommerce platformsSGCE 2015 - eCommerce platforms
SGCE 2015 - eCommerce platforms
 
Devops with ansible
Devops with ansibleDevops with ansible
Devops with ansible
 
Containers in 5... 9 minutes
Containers in 5... 9 minutesContainers in 5... 9 minutes
Containers in 5... 9 minutes
 
Chilango Rails Ecommerce Lightning talk
Chilango Rails Ecommerce Lightning talkChilango Rails Ecommerce Lightning talk
Chilango Rails Ecommerce Lightning talk
 
Home made ceviche
Home made cevicheHome made ceviche
Home made ceviche
 
Api's and ember js
Api's and ember jsApi's and ember js
Api's and ember js
 
FSL Vallarta, mejorando el rendimiento de las aplicaciones web
FSL Vallarta, mejorando el rendimiento de las aplicaciones webFSL Vallarta, mejorando el rendimiento de las aplicaciones web
FSL Vallarta, mejorando el rendimiento de las aplicaciones web
 
MagmaRails - Passionate Programmer
MagmaRails - Passionate ProgrammerMagmaRails - Passionate Programmer
MagmaRails - Passionate Programmer
 
Migrando Rails Apps entre Cloud y Bare Metal Servers
Migrando Rails Apps entre Cloud y Bare Metal ServersMigrando Rails Apps entre Cloud y Bare Metal Servers
Migrando Rails Apps entre Cloud y Bare Metal Servers
 

Presentacion programador apasionado

Hinweis der Redaktion

  1. Viajamos mucho, descansamos, comemos, jugamosydesarrollamosnuestrospropiosproyectos, Garra funky!
  2. Empresaenfocada a la comunidad
  3. Look at 2 months back, 6 months back what do you have to show of?
  4. programming by coincidence is copy code, make little changes, test make more little changes and make it work without fully understand what's going on, sooner or later, you will have to do things by your own and you will fail.You need to have a clear understanding in what you would like to be, senior engineer, manager, owner, etc. why ? Because everything you do will give you experience, don’t waste time learning things you wont use.
  5. All is business: our companies employ us just because they're going to make money with us, it's not about love, that's the goal, make money. So you need to figure out how to fit in business. but
  6. Talk with business people, ask them how they do their job and how technology helps them, do this regularly, subscribe to some business blogs, and try to gather a list of questions to ask them, all those questions would help you to understand how business are driven and will make you more unique!Medel Example
  7. You're following everyone else's plan, you need to follow your own plan!
  8. In my personal case, that’s why I love to be a consultant, there’s always new challenges to learn how the businesses work
  9. If you had money, where would you invest in? savings account, low reward and risk, startup? high reward but also high risk. Same happens on programming languages, you may want to learn most common technologies, you know that there's market for it, but you'll get an average salary. Java, Cobol, BeOS, RubyDesdeahoritaveandonde les gustariatrabajar
  10. Analyze all technologies, you may want to choose a cutting edge technology, but if it's attractive for someone else, it'd eventually get packed and the reward will go down, but, if you mastered your skills, you can still get high reward. You may want to take high risk learning some technology that is in its sunset, it's highly risky, but if you get a job, you can potentially get what you want, no one else knows it, and all the critical business apps are in your hands, but be flexible, move fast enough before all those systems are replaced.
  11. Go to job posting sites, and find out which skills are in high demand and low demand, then go and try to get offshore outsourcing companies and what they're offering, get the diff and focus on the ones that are in high demand domestically and little penetration offshore.Unavezqueeligierondonde les gustariatrabajar
  12. are you waiting to someone else to have mercy of you ? Don't wait to be told, ask! There's a lot of developers around the world that would claim to do the same as you do, sometimes with much lower rates. Become unique! Remember, supply and demand rule.
  13. Asking is not a sign of weakness, all knowledge that we have nowadays has been inherited from our ancestors, they've been mentoring us, sharing their experiences, find a good mentor, ask him to help you to create a roadmap, based on his experience.Why? they're always using alpha versions, cutting edge technology and they can know how much a wave can last. Who dont know any alpha geek? I bet at least, you know one of them the guy who first installed XP when it came and there was no drivers for modems, the first guy that ripped movies, downloaded the newest game, etc, they're remarkable!
  14. If you really want to learn something, try teaching it to someone else. Someone else could have a question that you never imagined, so it pushes to the edge.
  15. you may not be an absolute expert in something, but be sure that your knowledge will help to someone else with less experience, example: go and visit local meetups and offer your help to less experienced users, subscribe to mailing lists, IRC, forums, etc. Eventually your name will appear in search results.MySQL list example, replicationYour fear is the one that is between the pros and know them! When going to conferences, go and pick tables randomly, present yourself, and start meeting people, RailsConf example
  16. Go to any music academic, listen at the quality, it does not generally sound good, and it's intended to be like that, if so, they're not pushing their limits. When those musicians go and perform profesionaly, they're paid to perform, not to practice.
  17. Managers will have the same budget, it's up to you to part of any group, to be in the one with high rates and faster people, or low rates with a lot of people, imagine the reward on each type of developers, This is incredible easy, and powerful, simple things like installing a small program to resize windows will save you time, shortcuts to open everything needed, startup scripts, shell aliases, commit hooks scripts, when doing a release, it'd be nice to generate automatically the report and send it via email, this would save you tons of time!Startup example, they’re coming with a lot of money and short time
  18. they're powerful and underutilized, because lack of practice.
  19. Most of the times, the word methodology is synonym of paperwork, but that's not true. while practicing, you may break the cycle imposed by managers in terms of methodologies, they tend to apply the methodologies that they learnt (sometimes decades ago). what if your employee does not have nay process and you take the ownership, you will rock! PELDA˜NOS
  20. Blake Mizerany gave a good talk about polyglot, choose the best technology based on needs, not in love.
  21. Design patterns is the art to document reusable solutions to common software development problems. Go and find open source projects and see how specific pattern was implemented by others. when you have new problems to be solved, you might remember "oh wait, I saw this implementation in this cool open source project"
  22. Be the worst meaning always playing with people that are better than you, this will push you to the edges! Example, how many of you have played solo Unreal Tournament, Age of Empires, halo, etc! and you feel that you are good at it? then you went to play online just to discover that you're nothing! you can't even respawn.
  23. Listen carefully, take notes, imagine what your boss is going to ask you after every meeting, email thread, report, etc, what if you discovered a performance issue looking at the response time when finance is running a monthly report? you know that sooner or later, finance team will contact your boss about it, and your boss will ask you have a look, what if the answer of this  is: "Oh yes, I noticed it last week, and I've already placed an improvement" instead of "Mhm, financewhat? ok, I'll set some meetings and see where the problem could be" meaning that you dont have any clue about it.Be careful, being ahead is tricky! remember that you're being paid to do your job, but what if you do job nobody asked you to do, what if you were wrong? move small, 
  24. If you dont track anything you're doing, you don't have anything to justify your work, you should always be asking yourself: how can I increase the visibility of my work? they might know that you're good, what if they promote you to do the job they dont want to do ? or even worse, work that you hate! make this transparency happen, if they know you well, they will promote to positions that fit you. Look back and see how valuable you have become: if you have tracked all your accomplishments, you can probe the business how valuable you are, and you can get what you deserve, what do I need to do to get as twice as my current salary in 1,2, 5 years?
  25. Do you remember when you were students, you worked as trainee, earning few pesos, but you were able to go out almost daily, eat, go to the movies, etc ? and right now, it's much harder to do it?? that's because you used to treat your money more valuable and now that you ear more, it's not that valuable, it happens the same when programming, you need to treat your time as it were the most precious thing in the world, you need to sleep well, have fun and code, so, focus in your 8 hours schedule!
  26. I bet it was when a server was down, when the network failed, hard drive died and you needed to restore a backup from a weird format, etc. you got the work done fast and well done, it’s because the time was high value!Examen, Bill Gates dijoque los queestudiaban de ultimahoratendian a ser masexitosos, porquedesdeeseentonces se entrenaron en manejar el estres
  27. raise errors as soon as you notice them, dont try to hide, problems need solutions, avoid using git blame! be the ones that find errors, report them quickly and offer a solution.
  28. good and bad programmers are always going to quit their jobs, and the business will continue no matter what, don't try to probe anything
  29. we as programmers always feel that saying that we can't do something we fail, but that's the quickest path to loose our commitment and trust ability. Keep sanity, you need to sleep!
  30. dont speak in cryptic language that they dont understand, you may make them feel stupid with your sarcastic moments, check old emails sent to non technical people and look how technically you wrote
  31. You're working in a word wide environment, you need to communicate with coworkers/clients across the world, learn how to write well, because you need to improve your communication skills!. Have a look at some job posts, and see how many of them have this requirement (communication skills), or good verbal and writing skills.“You are what you can explain!”
  32. Show your brand, create a blog and post what you've been learning, show them the code you're been releasing as open source, they may be using the same technology that you contributed, this demonstrates skills in real projects, you're not saying that you heard about it, tell them your username in forums, your email in some mailing lists.Grandesempresasescanean la red pornuevoselementos, hagansefaciles de encontrarBut:
  33. Google your name, and see what it says about you. Write smart, think in the future
  34. Dont panic: what does best players share in common? they dont panic, they're always relaxed and know their context, panicking gives us inability to perform at our best at time we really need to perform at our best.
  35. if you're a manager, ask to your employees if they're bored, if you're an employee, tell them that you're getting bored, whenever they ask what would you like to do next, tell them! I want to become senior engineer, I want to found my own company.
  36. Focusing on finishing the project leads to forget good processes, and bad processes lead to bad software.
  37. what are you going to do? everything is in waves, you're either in front, above, or behind. book some regularly time to read blog posts, news, try new technology, do small prototypes and get familiar, your boss someday could come from a conference saying: "look! we're going to change everything to this cutting edge technology!"
  38. VW shuts down email service after business hours
  39. Engineers who love to code derive pleasure from building software in much the same way a composer might feel ecstatic about finishing a symphony. It is that feeling of excitement and accomplishment that makes rockstar engineers love to code
  40. Smart people know that the best way to solve problems is go straight at them, Instead of spending weeks designing complex, unnecessary infrastructure and libraries,a good engineer should ask: What is the simplest path to solving the problem at hand?
  41. The original idea behind refactoring was to improve code without changing what it does, this avoids legacy code that no one wants to touch
  42. Patterns are recurrent scenarios and mechanisms that live across languages and systems. Applying a pattern ensures correctness since it leverages existing know-how: a method for solving a particular engineering problem that has worked before.
  43. The goal is to create a working system, how can you be certain that your code is actually working if you never test it? Good engineers will always write a test once a bug has been exposed to make sure it does not come back again. But a good engineer also knows not to waste time writing trivial or redundant tests
  44. Aprovecha! Reinventing the wheel has always been one of the biggest problems in the software industry. Correct leveraging of existing infrastructure allows rockstar engineers to focus on what is most essential - the application itself.
  45. Good engineers work hard to make the system simple and usable. They think about customers all the time and do not try to invent convoluted stuff that can only be understood and appreciated by geeks.
  46. The other secret of good engineers is that it takes the same amount of time to write good code as it does to write bad code. A disciplined engineer thinks about the maintainability and evolution of the code from its first line. There is never any reason to write ugly code, a method that spawns multiple pages, or code with cryptic variable names. Rockstars write code which follows naming conventions, code which is compact, simple and not overly clever
  47. A good engineer might have a favorite programming language but is never religious about it . A good engineer knows that and is willing and able to learn new languages, new libraries and new ways of building systems.
  48. How can you build large scale software without knowing what a hashtable is? Or the difference between a linked list and an array? And the algorithms are just as important - from binary search to different sorts to graph traversals
  49. How fun is your work ? when we have more fun, we do better job: bored tasks are not challenging at all, but we need to do them, so ask yourself, why is the boring work boring? what's the difference between the work you love and hate? a simple technique to make it challenging is to pursuit perfectness in those tasks, let's say that you hate unit tests, and you need to automate some test coverage for the most critical flow, what if you pursuit for 100% of coverage? isn't that challenging? you've made a bored task in a challenging one