A menudo me preguntan cómo pueden encontrar trabajo en EEUU como desarrollador. Como creo que esto es de interés de muchos, he optado por escribir un artículo con la estrategia que creo más acertada.
En estos momentos, en EEUU hay una enorme demanda de buenos desarrolladores, sobre todo en la zona de la bahía de San Francisco. Durante el WWDC he llegado a ver una empresa en Twitter ofreciendo a los participantes 90.000 USD por indicar a cuatro buenos desarrolladores de iOS.
¿Qué encontrarás en este post?
Toggle¿Es difícil encontrar trabajo en EEUU como desarrollador?
Hace más de un año, en la semana que estuve encerrado en un bosque de Georgia, durante el curso de iOS Avanzado del Big Nerd Ranch, recibí tres ofertas laborales: dos de Google y una del Big Nerd Ranch. Una chica que solía sentarse a mi lado, al mes, estaba trabajando en Apple.
En el grupo de alumnos, había uno de Nueva York que trabajaba en JPMorgan desarrollando en Python. Lógicamente, todos le preguntamos si le había afectado la crisis del mercado financiero. Su respuesta fue una carcajada. Le importaba un bledo la crisis financiera, porque si cierra JPMorgan, en el mismo edificio de Wall Street estaba Deutsche Bank, Credit Suisse y Bloomberg. Afirmaba que para buscar otro empleo, no tendría ni que cambiar de edificio: “Si me despiden por la mañana en la quinta planta, por la tarde estoy trabajando en la cuarta”.
Un panorama claramente distinto del que tenemos hoy en España en general, con el paro.
En la década de los ochenta, la llamada “Década Perdida” de América Latina, yo vivía en Brasil, y la similitud con lo que está pasando ahora en España es sobrecogedora. Mucho me temo que nuestro país también tendrá su “Década Perdida” (de hecho ya hemos perdido 5 años) y mientras que España puede darse el lujo de perder una década, la mayoría de los españoles no podemos.
Así que, si eres bueno, anímate a dar el salto: nunca tendrás tanto que ganar como en estos momentos.
iOS y otras tecnologías con potencial
Lo primero es identificar el nicho en el que quieres destacar. Aunque aquí me centraré en las tecnologías nativas para desarrollar para Apple, no sólo de iOS vive el mercado del software y hay muchas otras tecnologías que están viviendo un boom en estos momentos. Algunos ejemplos son:
- iOS / Cocoa
- Android
- Ruby on Rails
- Python / Django
- Node.js
- Scala
- Go
Así que, si eres bueno, elige la que más te guste o convenga y ¡fórmate bien!: Las oportunidades existen, pero hay que ser muy bueno en lo que haces.
Ser bueno no es necesariamente tener un gran talento innato. En mi experiencia como formador he visto cómo el esfuerzo continuado a menudo supera al talento innato. Los grandes profesionales no nacen, sino que se hacen, con trabajo y constancia. En Agbo lo vemos a diario y un excelente ejemplo es el caso de nuestro alumno David Torquet.
El lenguaje de programación más importante de todos: el inglés
Ni que decirte que si no tienes un muy buen nivel de inglés, no puedes ni empezar. Así que haz una prueba: mírate los vídeos del WWDC y si no eres capaz de seguir al menos un 80%, apúntate a una academia de inmediato.
Tu plan de acción
Lo bueno de nuestra profesión, aunque algunos se quejan, es que reina la “meritocracia” más absoluta: si eres bueno, vales y punto. Así que tienes que demostrar lo que vales.
Una vez seleccionada el área en que te quieres especializar hay que empezar la campaña para ganar visibilidad entre los empleadores y “headhunters”. En el fondo, se trata de un plan de marketing cuyo producto que vamos a vender eres tú.
Para llevar a cabo este plan necesitarás una serie de herramientas mínimas:
- Indeed.com
- Cuenta en LinkedIn
- Blog con artículos técnicos
- Cuenta en Twitter
- WWDC y otros grandes eventos tecnológicos
- Cuenta en GitHub
Indeed
Indeed.com es un metabuscador de ofertas de empleo en EEUU que te permite hacer búsquedas avanzadas. Con él podrás saber donde se concentran las ofertas de aquella tecnología que hayas elegido, cuánto se paga y quien busca.
Con indeed.com puedes identificar además, otros nichos tecnológicos muy bien pagados. Por ejemplo, aunque no hay tantos empleos como para iOS, sí que hay bastantes y muy bien pagados para Clojure, Erlang y Scala.
LinkedIn.com es una herramienta fantástica, que a menudo pasa desapercibida para muchos y es imperdonable que un profesional no tenga hoy en día una cuenta y perfil en LinkedIn. En dicha red, es donde se mueven los mejores empleos y donde buscan los headhunters de las principales empresas de software internacionales. Con mucha frecuencia (varias veces a la semana) me contactan a través de LinkedIn buscando desarrolladores de iOS y envío dichas ofertas al grupo de alumnos de Agbo.
Para tener éxito en LinkedIn, has de crear un perfil en inglés, rico en palabras clave relacionadas a iOS, Cocoa, Objective C, OSX o a la tecnología que hayas elegido. Es decir, tienes que hacer un trabajo de SEO muy específico.
En tu perfil, has de dejar muy claro y en el primer párrafo que estás buscando trabajo como desarrollador de lo que hayas elegido. Es fundamental que quien visite tu página sepa de inmediato que estás disponible.
Acto seguido, tienes que empezar a crear tu red de contactos. Date de alta en los principales grupos relacionados a desarrollo para iPhone/iPad y Mac y participa en ellos. Procura contactar a los “headhunters” de empresas que te interesan. Esta gente suele tener muchos contactos, que amplían tu propia red en Linkedin y están siempre interesados en buenos candidatos.
Revisa también quién ha visitado tu página y, si es interesante, envíale un mensaje preguntando en qué le puedes ayudar. A menudo obtendrás información interesante y nuevos contactos. Pasados algunos meses, empezarás a recibir ofertas de trabajo.
Blog
Como complemento a tu perfil en LinkedIn, debes de tener un blog de artículos técnicos (en inglés, recuerda el objetivo) relacionados a la tecnología elegida. Antes de empezar a escribir, asegúrate de hacer un estudio de palabras clave para saber cómo se busca en Google la información relacionada con tu tecnología. No evites este paso ya que si no podrías estar trabajando en vano al intentar posicionarte en las palabras clave equivocadas. Si no tienes esto muy claro, cómprate un libro de posicionamiento en buscadores.
No olvides siempre enlazar tus artículos a tu perfil en LinkedIn y viceversa. Al aparecer en tu perfil, dichos artículos mejorarán tu posicionamiento dentro del propio LinkedIn.
Complementa tu blog con una cuenta de Twitter, donde puedes ir publicando tus artículos e identificando a las personas clave en tu tecnología. Twitter es un excelente medio para empezar a “aparecer en el radar” de alguna comunidad. En mi Twitter @frr149 o en el de@agbotraining estamos siempre publicando ofertas de trabajo que nos llegan tanto para España como para fuera.
Conferencias
Prepara una buena charla (¡en inglés!) sobre la tecnología que hayas elegido y busca conferencias internacionales a las que presentarla. Eso te dará a conocer y ampliará mucho tu red de contactos.
WWDC
Si piensas buscar trabajo como desarrollador iOS considera ir al WWDC. Es la mejor ocasión para hacer networking. Es caro, pero puede abrir muchísimas puertas. Si no te lo puedes pagar o, lo que es más probable, no consigues entrada, ¡ve de todas formas!
Tú no vas necesariamente a ver las sesiones (eso lo puedes ver por streaming desde tu casa) sino que vas a hacer networking. Así que prepara una agenda para visitar a todas las startupsen las que te interese trabajar, vete a todos los meetups que puedas, contacta a los job hunters locales y acude a todas las fiestas organizadas alrededor del WWDC y date a conocer.
Cuando te contacten
Una de las primeras medidas, tras contactar contigo por LinkedIn será concertar un entrevista telefónica. Esta se desarrollará en inglés, así que practica la conversación para cuando llegue el momento. A menudo te pedirán un CV. Aunque toda la información del CV ya está en el perfil de LinkedIn, muchos reclutadores siguen aferrados a esta vieja herramienta. Si te interesa el puesto, mejor tener siempre uno a mano.
En la primera entrevista te explicarán en qué consiste el puesto de trabajo y repasarán la información que está en tu perfil. Esta primera entrevista no es técnica y se lleva a cabo con el reclutador. Una vez superada y, si confirmas estar interesado, el siguiente paso es enviar tu información a algún informático a cargo de la contratación.
GitHub: aquí no puedes mentir
Aquí es cuando entra en juego tu perfil en GitHub. GitHub es un sitio de repositorios de código con el sistema de control de versiones Git. En él están almacenados los principales proyectos de código libre del momento, como Ruby On Rails, Node.js y muchos más. Hay infinidad de código para Objective C y casi cualquier otro lenguaje que se te ocurra.
Sin embargo, lo que nos interesa, es el aspecto social de dicha web. Es la red social para “frikis”, donde uno puede identificar a grandes desarrolladores, bajarse su código, seguir sus actividades, etc.
Es fundamental que participes de algún proyecto de código abierto que use tu tecnología. Tus aportaciones quedarán recogidas en GitHub y cualquiera las podrá ver. Así que si tienes código del cual estés orgulloso, no dudes en subirlo. GitHub es para los desarrolladores lo que dribble.com para los diseñadores: tu portfolio de código.
Hoy en día, para puestos de desarrollo, cada vez es más común que te pidan tu perfil en GitHub en vez de un CV. En el currículo puedes mentir, en GitHub no. Es tan importante para los desarrolladores, que en Agbo hemos creado un curso donde, entre otras cosas, te enseña a sacar el máximo provecho de esta herramienta: Curso de Iniciación a git, gitHub & SourceTree: “Control de versiones para el siglo XXI”.
Superar una entrevista técnica
Una vez repasado tu perfil en GitHub, el paso siguiente será una entrevista técnica. Aquí ya la cosa depende de la empresa y podría darse el caso que te pidan escribir algo de códigodurante la entrevista. Al menos en el caso de Google, esto se suele hacer por Skype y se usa un documento de GoogleDocs para compartir el código.
Practica este tipo de entrevistas. En Amazon hay una gran cantidad de libros sobre lo que se suele preguntar, como por ejemplo “Cracking the Coding Interview”.
Aquí no vale tener un conocimiento superficial de Objective C & Cocoa, las preguntas que te van a hacer son duras y exigen un conocimiento profundo de las bases. Es decir, tienes que tener bases muy sólidas, tanto del lenguaje como de las principales frameworks. Se suelen preguntar bastantes cosas sobre categorías y Core Data, así que llévalo al dedillo.
Hoy por hoy, existe una cierta obsesión en el Silicon Valley por todo lo relacionado con las redes sociales, así que es común hacer preguntas de algoritmos de grafos, incluso para puestos “mobile”, donde esto no se usa para nada. Por lo tanto, repasa bien esa teoría. Otra pregunta muy común es cómo implementar un caché LRU. Ya sé que esto no sirve de mucho, pero es lo que preguntan y hay que saber responder.
Pasar una entrevista técnica en el Silicon Valley es como aprobar el examen teórico del carnet de conducir: tienes que dominar un montón de cosas que no sirven de mucho en la práctica, pero si quieres el carnet, no hay más remedio. En Amazon hay infinidad de libros con las preguntas más típicas. Es también conveniente leerse alguno sobre cómo entrevistar a un posible desarrollador para entender qué es lo que busca el reclutador y sus técnicas.
Una vez superado, la propia empresa debería gestionar tu visado H1B (para mano de obra cualificada).
Compite con ventaja
Si quieres jugar con ventaja y los desafíos no te asustan, conviértete en un experto no sólo en desarrollo iOS, sino Android también. Son muy pocos los desarrolladores con ese perfil y eso aumenta muchísimo tu valor en el mercado.
No es tan difícil como pueda parecer, ya que muchas cosas son similares y hay muchos paralelismos. Si vienes de programar para iOS, nuestros cursos de Android te ponen muy fácil esta transición ya que vamos en todo momento destacando estos paralelismos.
Tener un pie en cada mundo, aunque uno no te guste demasiado, tiene un valor enorme: no lo subestimes.
“No pain, no gain”
Sí, puede parecer mucho trabajo pero “no pain, no gain” y para grandes oportunidades, grandes esfuerzos. Si eres friki al 100%, crear código brillante, escribir post técnicos en tu blog, etc. es parte del goce. El resultado es poder estar muy bien remunerado en la Meca del frikismo informático.
Para que veáis cómo se puede poner en la práctica todo esto, os contaré en mi próxima entrega de esta sección, el caso real de un amigo mío brasileño, que recientemente dio el salto. En estos momentos trabaja en una startup con un proyecto revolucionario en Mountain View.