En Turing, estamos buscando programadores Elixir remotos que puedan construir aplicaciones distribuidas y a prueba de fallos. Esta es tu oportunidad de trabajar con las compañías líderes de EE.UU. y colaborar con los mejores profesionales del mundo.
Aplica a Turing hoy mismo.
Completa tus datos básicos: nombre, ubicación, conocimientos, expectativa salarial y experiencia.
Resuelve pruebas y asiste a una entrevista técnica.
Las mejores empresas de EE.UU. y Silicon Valley te elegirán como colaborador.
Una vez que seas parte de Turing, ya no tendrás que volver a buscar otro trabajo.
¿Qué es Elixir? Elixir es un lenguaje de programación dinámico que permite crear sistemas escalables y mantenibles. Se basa en la máquina virtual Erlang, que es conocida por ejecutar sistemas de baja latencia, distribuidos y a prueba de fallos, además de utilizarse con éxito en el desarrollo web y las aplicaciones integradas.
José Valim, antiguo miembro esencial del equipo de Ruby, fundó el lenguaje en 2011 y está basado en gran parte en él. Cuenta con una sintaxis expresiva y un estilo comparable. Es interoperable con Ruby, así como su ecosistema y rendimiento, debido a su compatibilidad de código de bytes con la VM de Erlang (BEAM). Elixir puede manejar una gran cantidad de tráfico sin dejar de ofrecer un buen rendimiento y características interesantes. También se construyó utilizando el modelo de actor, que es una técnica de concurrencia para crear sistemas escalables.
Elixir tardó unos años en establecerse entre la comunidad de desarrolladores. Sin embargo, en 2021, llenó un nicho curioso y en aplicaciones específicas, incluso superó a sus oponentes.
Brinda una base para muchos programas en línea a gran escala, junto con Phoenix. Elixir es una gran opción si se busca un MVP escalable. Gracias a Nerves, también es una buena opción para el software integrado.
Eso es una ventaja, pero ten en cuenta que Elixir nunca será tan conocido ni tendrá una comunidad tan grande ni tantas librerías listas para utilizar como algunos de sus competidores. En Stack Overflow, no es un lenguaje que tenga una solución para todos los problemas imaginables.
Las responsabilidades de los trabajos de desarrollador elixir incluyen una variedad de tareas, tales como:
Elixir se puede aprender de la misma manera que cualquier otro lenguaje de programación. Sería tan sencillo como aprender las funciones incorporadas del lenguaje y luego aprender la nueva sintaxis si tienes una buena base de programación de cualquier tipo. Estos son algunos de los pasos que deberás seguir para poder aplicar a puestos de trabajo de desarrollador elixir:
Si trabajaras en aplicaciones reales, te enfrentarás a desafíos y aprenderás más conceptos que en tus propios proyectos secundarios.
¡Conviértete en un desarrollador de Turing!
Los trabajos de desarrollador elixir son un campo relativamente nuevo y en rápida expansión. Por lo tanto, no hay un enfoque único para convertirse en un desarrollador elixir. Dependiendo de tu formación, tu talento técnico y tus áreas de interés, hay varias formas de entrar en el sector.
Si quieres progresar en tu carrera, deberás aprender las siguientes habilidades:
¿Qué es exactamente la concurrencia? Considere la informática como una carrera en la que el ganador tiene que esperar la finalización del recorrido por parte de todos los competidores. Los corredores (procesos) suelen estar atados con una cuerda, de modo que si uno falla, los demás no pueden continuar. ¿Qué pasa si se desata a los corredores y se les deja terminar en el orden que quieran, independientemente del resultado final?
La concurrencia no es normalmente la primera o la segunda cosa que aprenden los desarrolladores, pero para los trabajos de desarrollador elixir deberías empezar a aprender sobre ella lo antes posible. Elixir tiene una gran variedad de usos, pero cuando se necesita realizar muchas cosas a la vez, es donde ocurre la magia. A diferencia de las formas más conectadas en que funcionan otros sistemas, Elixir puede escudriñar a través de múltiples procesos que fluyen al mismo tiempo, con docenas más ejecutándose en segundo plano.
Sin esta vinculación, un sistema Elixir puede tener propiedades de autocuración, y sus procesos son lo suficientemente pequeños como para ejecutarse en todas las CPUs al mismo tiempo. En este sentido, Elixir es similar a su antecesor, Erlang, que se caracteriza por la frase "escribe una vez, ejecuta para siempre". Ambos utilizan un mecanismo de concurrencia muy distinto al de los hilos tradicionales.
Las aplicaciones web serán una gran parte de tu trabajo en Elixir. Como resultado, se regirá, al menos en parte, por el protocolo HTTP y la infraestructura del servidor.
Elixir viene con una serie de frameworks web excelentes, como Phoenix y Absinthe, por mencionar algunos. Sin embargo, no podrás lograr nada con ellos a menos que tengas una comprensión fundamental de cómo funciona Internet.
Para empezar, te sugiero algunas cosas. Familiarízate con el ciclo básico de comunicación petición-respuesta, que está bien explicado aquí. No sólo debes conocer los códigos de estado HTTP, sino también qué hacer si se producen. La distinción entre los métodos POST y PUT es útil, y Stack Overflow tiene un buen hilo explicativo. En este vídeo de una hora, aprenderás a utilizar las cookies en HTTP. Luego, gracias a Mozilla, repasa tus conocimientos sobre las cabeceras HTTP. Los conocimientos sobre Web Socket serían un buen broche de oro para este inventario inicial. Aunque es un tema amplio, los fundamentos se pueden encontrar en esta entrada del blog.
Si tienes problemas con las bases de datos en tu tecnología anterior, no te preocupes; Elixir te facilitará las cosas y será amigable durante el proceso de aprendizaje si no tienes experiencia relevante.
Sin embargo, Elixir no es para las personas que quieren todo inmediatamente. Una implementación estándar de Ruby se encargará de una serie de cosas cuando se trata de bases de datos, como la creación y la siembra de la base de datos inicial. Sin embargo, con Elixir, serás responsable de algunas de ellas.
Después del obstáculo inicial, Elixir se desempeña admirablemente. Ecto, la envoltura de la base de datos, soporta tanto bases de datos SQL como NoSQL. Es incluso más que eso porque es una cuestión de lenguaje.
Dado que Elixir es un lenguaje funcional, fomenta el procesamiento de datos en forma de pipelines, que se componen de funciones que modifican estructuras de datos inmutables. Te sentirás cómodo si es que este método de procesamiento de datos te atrae. A medida que ganes experiencia, librerías como GenStage o Flow te permitirán implementar Elixir en un contexto distribuido, que es una de las principales ventajas de Elixir.
Los desarrolladores elixir colaboran con frecuencia con científicos y analistas de datos, ingenieros de software, científicos de investigación, equipos de marketing y equipos de productos, por lo que la capacidad de explicar con precisión los objetivos, calendarios y expectativas del proyecto a las partes interesadas es una habilidad esencial.
¡Conviértete en un desarrollador de Turing!
Para estar al día con todos los avances de la industria y desarrollar gradualmente sus habilidades, los desarrolladores elixir deben trabajar bastante. Para destacarse en su sector, deben seguir las mejores prácticas con éxito y de forma constante. En este sentido, hay dos factores principales en los que los desarrolladores deben centrarse para avanzar: Deben afinar su capacidad de análisis, y es posible que necesiten el apoyo de alguien más experimentado y hábil para enseñar nuevas habilidades mientras practican.
Oportunidades a largo plazo para trabajar en grandes empresas estadounidenses, orientadas a un objetivo y con una gran compensación.
Trabaja en problemas técnicos y empresariales desafiantes utilizando tecnología de vanguardia para acelerar el crecimiento de tu carrera.
Únete a una comunidad mundial de desarrolladores de software de élite.
Los compromisos de Turing son a largo plazo y a tiempo completo. Cuando un proyecto llega a su fin, nuestro equipo se pone a trabajar para identificar el siguiente en cuestión de semanas.
Turing te permite trabajar según tu conveniencia. Tenemos un horario flexible y puedes trabajar para las mejores empresas de Estados Unidos desde la comodidad de tu casa.
Al trabajar con las principales empresas de EE.UU., los desarrolladores de Turing ganan más que el salario estándar del mercado en la mayoría de los países.
Cada desarrollador Elixir tiene la opción de seleccionar su rango salarial. Por otro lado, Turing sugerirá un monto con el que nos sentimos seguros de que podemos encontrar una buena oportunidad a largo plazo para impulsar tu carrera. Nuestras recomendaciones se basan en el análisis de las condiciones actuales del mercado y las demandas de nuestros clientes.