Si tomas un trabajo de desarrollador front-end, ¿puedes obtener un puesto completo de Rails o JavaScript algún día, o te encasillaría para hacer principalmente front-end a menos que hicieras un estudio sustancial?

No hay posibilidad de ser encasillado.

Absolutamente podrá obtener una posición JS (porque, JS es ‘front-end’).

Con Rails: hay muy pocos desarrolladores verdaderos de ‘pila completa’. Y por pila completa, me refiero a lo siguiente (y es una escala de la mayoría del ‘lado creativo’ al ‘lado técnico’, una nomenclatura bastante arbitraria, pero la mayoría lo entenderá)

– Diseño
– UX
– UI / Styling
– Front End / Templating
– Back End
– arquitectura
– DB Admin
– Administrador de sistemas

Muchos desarrolladores de pila completa son personas que se ajustan a la escala del tipo de ubicación ‘front-end / back-end’, con cierta superposición en todo el camino hasta DB Admin. Conozco a muchas personas de Rails que comienzan por el lado de atrás y apenas llegan al frente. Su capacidad para construir el desarrollo de la interfaz de usuario y comprender que el estilo es limitado, y hay un nicho para las personas que pueden ayudar significativamente en esa área mientras contribuyen un poco al back-end.

En el mundo de las cosas de Rails, me gusta que las personas que son más pesadas en el desarrollo front-end puedan construir acciones de control apropiadas para trabajar con aquellos en el lado del modelo, cuando piensas en ‘Fat Model, Skinny Controller’, Es posible que no esté optimizando agresivamente el código del modelo, y dejándolo a los desarrolladores de Back End, pero sigue siendo absolutamente productivo en el crecimiento y desarrollo de nuevas características, y en un equipo, ese tipo de conocimiento es importante y todavía te hace ‘pila completa’. Eventualmente te acercarás más al back-end y, a partir de ahí, tendrás mucho más valor.

(Que es esencialmente como hice las cosas)

Nada te encasillará, especialmente si te aplicas y haces grandes cosas con lo que se te da, y te tomas el tiempo para hacer tu propio estudio. Rails y JavaScript comenzaron como principalmente lenguajes de secuencias de comandos de front-end, pero ambos se han convertido en plataformas mucho más potentes, que le permiten tener en cuenta el desarrollo de middleware y back-office, no solo la interfaz de usuario. Estas consideraciones son altamente conceptuales, y una vez entendidas se pueden transferir fácilmente al pasar a un lenguaje de nivel empresarial como C #, Java EE, C ++, etc.

Si trabajas lo suficiente, eventualmente llegarás allí.

Eso depende completamente de tu propia actitud. Si tomas el trabajo como un desafío, puedes ser muy bueno con el trabajo duro y aprender todo lo que puedas, es un trampolín. Si entras pensando que deberías estar haciendo otra cosa, no te llevará hacia adelante, incluso si te mantienes en él por mucho tiempo.

No diría que te encasillará para que hagas principalmente el trabajo de front-end. Estoy seguro de que si tomas el puesto de desarrollador front-end, podrás aprender y elegir los cerebros de tus compañeros de trabajo que son desarrolladores full-stack o back-end, así como hacer un poco de autoestudio en tu tiempo libre.