Your SlideShare is downloading. ×
Ninja programador
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Ninja programador

2,415
views

Published on

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,415
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
23
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Afilando la Katana: Qué debe saber un Ninja Programador (en 2013) Pedro Galván Kondo @pedrogk #sgvirtual
  • 2. Un ninja sabe ... ● Lenguajes ● Frameworks ● Moverse en todo el stack ● Aportar en el ciclo de vida de software #sgvirtual
  • 3. Un ninja es políglota pero tiene un lenguaje base ● ¿estático o dinámico? ● multiplataforma ● Recomendaciones: Python, Ruby, Groovy, C# #sgvirtual
  • 4. Un ninja sabe programación funcional ● ● #sgvirtual Clojure Haskell
  • 5. Un ninja usa distintos lenguajes para dominios específicos ● ● Php (Web) ● Javascript ● Lua (juegos) ● R (análisis de datos) ● #sgvirtual Objective-C (iOS) C++ (infraestructura)
  • 6. Un ninja entiende y aprovecha frameworks ● ● ● #sgvirtual Entender patrones arquitectónicos (MVC, MVP, MVVM) Entender Convention <-> Configuration Microframeworks (ej. Sinatra)
  • 7. Un ninja es un full stack developer ● ● Middleware ● Data management ● Integración ● #sgvirtual Front end Infraestructura
  • 8. Un ninja hace vibrar al front end ● ● ● ● #sgvirtual HTML5/CSS Manipulación de DOM (JQuery) OpenGL Otros específicos a plataforma (Cocoa, WPF, etc)
  • 9. Un ninja sabe moverse en el middleware Application servers/containers ● Message oriented ● Package management ● Programación asíncrona (ej. Node.js) ● #sgvirtual
  • 10. Un ninja sabe manejar datos ● ● NoSQL (mongoDB, Redis) ● NewSQL ● #sgvirtual BD relacionales Big data (MapReduce)
  • 11. Un ninja sabe integrar sistemas ● Entiende protocolos de comunicación (HTTP) ● ● #sgvirtual Usa y diseña APIs (REST) Aplica Patrones de Integración.
  • 12. Un ninja sabe de infraestructura ● ● ● #sgvirtual Linux y bash PaaS (App Engine, Azure, AWS, Heroku) Gestión de cómputo elástico
  • 13. Un ninja no se limita a programar funcionalidad ● Diseño lógico (arq., modelado, patrones) ● Testing (unitario y stress) ● Software configuration management (control de versiones distribuido, build automation, integración continua) #sgvirtual
  • 14. Un ninja detecta tendencias ● ● #sgvirtual Interfaces humanas (reconocimiento de voz y gestos, natural language processing) Datos (big data, machine learning, visualización)
  • 15. Si te falta mucho ... No te preocupes, mejor ocúpate #sgvirtual
  • 16. Gracias Lee SG http://sg.com.mx Regístrate en http://sgtalento.com #sgvirtual