Plataforma de desarrolladores/programadores junior

¿Qué tengo que aprender para llegar a trabajar de X?

Cuando tengas claro que es la X busca tu roadmap aquí y empieza en ello https://roadmap.sh. No es obligatorio ni recomendable acabarlo todo antes de empezar a buscar, pero ya sabes cuales son las cosas que se te suele pedir.

¿Algún recurso para empezar?

pantocreitor

#4018 pero eso que comenta Desu va a depender de la empresa y de quien te toque, también te vas a encontrar gente con paja en la cabeza con otros lenguajes.
Por ponerte un ejemplo, he visto gente que curra con node que se creían que estaban haciendo algo increíble cuando lo que estaban haciendo era una cagada de sobreingenieria brutal, con lo que según ellos eran “buenas prácticas” y mis cojones, o gente que usa Rust o Go porque es la polla y no saben ni por qué lo usan.

No os cerréis a nada porque hasta que no llevéis bastante tiempo y hayáis probado bastantes lenguajes y trabajado con bastante gente no vais a poder tener una opinión formada.

1 1 respuesta
Kaledros
#4020Nozrwell:

Estoy con las practicas de DAM

#4020Nozrwell:

no estoy haciendo nada de desarrollo

Porque no puedes. No te pueden poner a hacer trabajo remunerado. No vais a la empresa a aprender a programar, vais a aprender como funciona una empresa por dentro. Estáis aún en el ciclo, estáis APRENDIENDO, no trabajando.

2 3 respuestas
D

#4021 Al contrario yo estoy abierto a aprender de todo (siempre relacionado con lo que estoy estudiando), lo que mas ganas tengo es de eso de empezar a trabajar, pero me da igual si es con java, typescript o con cobol.

RSN

#4020

Yo en tu lugar haría algo que ya se comentó en algún momento páginas atrás.

Informar a tu centro de que las prácticas no te están sirviendo para nada. En los FP, los centros que cogen gente de prácticas, cobran por ello. Básicamente cobran por enseñarte, si no lo hacen, que no cojan gente de prácticas y punto. Te tocaría esperar a Septiembre para volver a otras prácticas pero puede ser que te valga la pena la espera, ya que en Septiembre no suele entrar tanta gente de prácticas y allá más donde elegir.

Durante la espera sigue grindeando cositas que recomiendan aquí como Codewars para seguir perfeccionando skills. Poco a poco decidir que path quieres seguir en el mundo de la programación y concretar más tu estudio, etc.

#4022 Tienes razón y a la vez no. Conozco ya varias personas que han tenido experiencias muy positivas en prácticas porque simplemente han tenido mentores como toca. Que le pongan a leer documentación sobre call centers yo qué quieres que te diga.

2
CaNaRy_r00lz

#4005 Solo queria saber la razon, pienso igual que tu, quiero asentarme bien en Java pk pienso que una vez controlas un lenguaje es mas facilt saltar a otro, mi empresa tiene codigo con de hace 20 años hecho para mi punto de vista como el culo, y esta migrando todo a la nube y actualizandolo, pero vamos son chinos y me cuesta un huevo primero entenderlos en ingles no solo me pasa a mi sino a los nativos tb, pero su forma de hacer y trabajar es buf xD

Chefoxs

#4020 Yo en su momento estaba igual que tú, no desarrolle nada en prácticas y cuando me contrataron menos, recién al año me han dado proyectos pequeños y ahora estoy con más responsabilidades haciendo mil mierdas que van saliendo.

Si miro atrás pienso que me han aguantado mucho para enseñarme como es el negocio de la empresa , la arquitectura, servicios de proveedores, incidencias del cliente, etc...

1 respuesta
missmay

#4022 bueno, eso de que no te pueden poner a hacer trabajo remunerado... todos los chavales de prácticas que he tenido yo en los proyectos que he estado han tocado código que luego iba a ir a producción... lo mejor para ver como se trabaja en una empresa es aunque sea ver como se gestiona un proyecto real no?

pero que mínimo que si ha estudiado programación vea algo de programación, no? es lo más lógico

1 1 respuesta
Nozrwell

#4026 El problema es que donde estoy, no hacen nada de programación, basicamente lo que hacen es mantener los servidores de calls center a distancia

Kaledros
#4027missmay:

todos los chavales de prácticas que he tenido yo en los proyectos que he estado han tocado código que luego iba a ir a producción

Como si los ponéis a traer cafés o a limpiar las ventanas, pero ponerlos a hacer código es ilegal:

No está permitido cubrir, ni siquiera con carácter interino, ningún puesto de trabajo en plantilla con el alumno o la alumna que realice actividades formativas en la empresa.

https://todofp.es/sobre-fp/formacion-en-centros-de-trabajo.html

3 respuestas
missmay

#4029 si si, se que bien no está pero yo era una mandada más a la que le meten un chico/a en el proyecto para que "ayude" por que así sale más rápido el trabajo. también te digo que a una empresa grande se la debe pelar mucho por lo que se ve...

1 respuesta
pantocreitor

#4030 cárnicas, son cáncer en prácticamente todo lo que hacen

1
D

Pues en IOC las empresa para practicas tengo que buscarmela yo, no se si eso es lo mejor o lo peor.

1 respuesta
RSN

#4029

No quiero desvirtuar mucho el hilo, de hecho si lo crees necesario podríamos abrir un hilo pero...

En mi campo, en la sanidad, he tenido personas de prácticas muchos años seguidos. Lógicamente, no les dejaba tratar con el cliente final ellos solos, porque es muy peligroso. Pero, en cualquier caso, qué hago? Los tengo haciendo inventarios/reposición/sacar la basura/mover cajas del almacén todo el tiempo?

En mi caso concreto los dejaba ver en tiempo real lo que estaba haciendo, me tomaba la molestia de explicarle al cliente que era una persona de prácticas por lo que iba explicando los pasos que seguía (solo las primeras veces). Después, les dejaba aplicar los conocimientos adquiridos bajo mi total supervisión. Es decir, por hacer una analogía, ellos estaban escribiendo el código pero yo lo estaba supervisando constantemente y nunca iba a llegar a la siguiente fase sin yo haberlo visto al 100%.

¿Está permitido dejar a esa persona sola durante las prácticas por muy suelta que vaya? No, claro que no. Pero tanto te costaría sentarlo a tu lado y que viera lo que vas haciendo? Y de vez en cuando tareas que tú completas en literalmente 5min dejárselas a él/ella que probablemente tarde 1h y le sirva para aprender?

Te pregunto desde el total desconocimiento si esto tampoco se puede hacer en prácticas de programación, porque entonces me parecería que el problema estaría en la legislación de las prácticas.

3 1 respuesta
kraqen

#4032 Las prácticas te las tienen que dar, estás pagando por ello y es parte obligatoria del plan de estudios. Otra cosa es que para FP privados es mucho mejor si te buscas tú la empresa: menos trabajo buscando centros (sobretodo con las últimas reformas y si es a distancia mejor) y posiblemente menos quejas ya que eres tú quien decide a donde echar. Además que te lo pueden vender como 'preparatorio para el mundo laboral', como hacen con las prácticas en los EEUU.

Pero si no encontraras nada, tienen que tener una bolsa de empresas adscritas y meterte en una de ellas.

RedSpirit

#4029 Hay una diferencia enorme entre que no esté permitido cubrir un puesto de trabajo y que directamente no se le deje tocar nada de código que es para lo que ha estado estudiando. Puedes tirar código a producción, siempre por supueto que se te lleve de la manita y que el objetivo último de ello sea que aprendas y veas cosas reales, no que la empresa se ahorre 4 duros poniéndote a hacer curro que de otra manera haría un junior de verdad.

Es como si haces un FP de chapa y pintura y no tocas un coche durante todas las prácticas, no tiene ningún sentido.

1
_Kok3_

Voy a comentar mi caso.

Actualmente estoy haciendo las prácticas en una empresa que trabaja con a3erp y manejan una api creada en no sé que lenguaje "viejete" que recoge los datos del erp y los muestra, la api es algo fea/desastre (incluso se le puede hacer SQL injection), pero bueno es funcional más o menos. La parte del front se desarrolla con React.

Al principio de las prácticas, las dos primeras semanas o así, pues lo típico, estuvimos digamos pasando unas pruebas "técnicas" con js puro, para ver como nos desenvolvíamos con el código, como planteábamos el problema etc. Luego haciendo fetchs a su api y mostrar los datos de X manera, hacer ciertas funcionalidades y cosas varias. También entre medias, alguna prueba de rendimiento/optimización de código (estaba bastante entretenido resolverlas), en plan hacer una función que haga X y el ganador será el que pase ciertos test de manera más rápida.

Y bueno ahora y respecto a #4022, no sé si es porque había sido el mejor en casi todas las pruebas anteriores y/o tenia ya algo de base con react ya que había hecho el curso de fullstackopen y alguna cosita más, pero nos ha tocado a un compi y a mí en conjunto a hacer unas apps/proyecto con react. Los demás están en otras "secciones" tocando algo de python para no sé que historias etc.

La empresa esta ubicada en dos puntos diferentes, donde estoy yo de desarrolladores estamos mi tutor y yo, los demás compis de prácticas y desarrolladores están en el otro sitio. Al principio, pues sí que me ayudo mi tutor de la empresa a hacer una clean architecture al proyecto, detalles de hacer uso de interceptores etc. pero vamos poco más

El proyecto es un proyecto real y ya se lo hemos enseñado al cliente, tenemos uno más, uno que tuvimos que enseñarlo de un día para otro, pero fatal, tuvimos que crear varias vistas y fakear las peticiones de la api a la misma id... etc. super mal estructurado y planteado, pero básicamente porque no teníamos tiempo y había que mostrarle un "borrador" de como se vería la app. Y no sé si es que ha visto que más o menos sacamos el trabajo que ahora tenemos un 3er proyecto para hacerlo en 5días con login por roles, diferentes vistas etc.

Y bueno hasta ahora mi experiencia sin más, no me esta gustando del todo porque esperaba aprender/empaparme de buenas prácticas de la empresa y no es así, a parte mi compañero de los proyectos no tiene mucha exp con react, soy yo quien crea el repo, hace toda la lógica del proyecto, las rutas, funcionamiento del login, persistencia de usuario etc.., él en cambio hace unas funciones bastante rarufas, la estructura de sus componentes meh, 8 líneas de espacios sin sentidos, no formatea código, variables sin usar etc.... y lo peor es que como nadie nos ve/corrige el código y/o la estructura pues meeeh, yo no puedo estar haciendo de "tutor" y diciéndole a mi compañero de prácticas como tiene o debe hacer las cosas, le dije: oye macho, ponte la extensión error lens, al menos te va a indicar diferentes errores, si tienes alguna variable sin usar y demás cosas, pero me contesto que le molestaba visualmente tener la extensión esa :psyduck:... el jefe solo ve la parte visual, funciona y alé, va "bien" pues next project XD

1 respuesta
B

#4036 Si al team lead le suda 3 cojones la calidad del código, haz tú lo mismo sin nigún tipo de reparo. Crea tus componentes, tu arquitectura y tus funcionalidades en base a las tareas que te asignen, asegúrate de que estas funcionen bien y no te comas la cabeza. El mantener el potorro que genere el compañero será problema de ellos a futuro porque a quien pagan para velar por la calidad y cohesión del código no está haciendo bien su trabajo. Quédate con las buenas prácticas que vayas aprendiendo por tu cuenta y obviamente, en cuanto creas que es el momento, cambia a otra empresa donde se hagan mejor las cosas. ¿Podrías asumir tú la responsabilidad de llevar a cabo dichas gestiones, formar a tu compañero, etc? Sí. ¿Te van a pagan por ello? No. En empresas decentes, lo normal es trabajar con configuraciones cross-editor como .editorconfig, con linters y formatters en los pipelines y derivados que se encarguen de cohesionar el código en caso de no hacerlo uno mismo ya, que debería.

Respecto a usar mocks para enseñar la funcionalidad en una maqueta, por desgracia es más habitual de lo que parece. El cliente no siempre sabe lo que quiere o puede llegar a tener y hasta que no lo visualiza no se hace una idea. Igualmente si para esa primera visualización te creas tus entidades, tus dtos, tus servicios, le das forma a la arquitectura, y lo haces todo minuciosamente, si al final el cliente, que es quien pone la pasta, no lo quiere, has tirado ese tiempo a la basura. Esas poc se podrían hacer con Figma si tuviérais un equipo dedicado a ello, pero por lo que comentas, te lo han calzado a ti por los loles. No siempre las cosas se hacen mal porque no se sepa cómo deberían hacerse bien, sino porque los recursos son limitados o al que está por encima tuyo le están apretando los machos y quieren todo para ayer. Pero bueno, con que hayas sabido identificar los problemas, ya tienes buen camino andado.

1
Cr3ative

A mí me acaban de mandar el plano informativo de dual en la empresa que voy a entrar, es una empresa no tecnología de unos 200 empleados, iría a las oficinas en el departamento de informática y en el plano pone que tocaría lo referente a sistemas y bases de datos. He investigado un poco y parece que tocan temas de ERP con dynamics nav de Microsoft.

¿Teniendo en cuenta que soy estudiante de DAM como pinta la cosa? Me da miedo porque parece más orientado a sistemas pero han pedido alguien de DAM.

¿Hacia donde me podía encaminar con esa experiencia tocando ERP siendo desarrollador visto que voy a estar ahí un año?

Kaledros
#4033RSN:

Te pregunto desde el total desconocimiento si esto tampoco se puede hacer en prácticas de programación

Claro que se puede, lo sientas al lado y le vas explicando como vas implementando una tarea o debugando un problema.

1
B

Buenas gentuza.

Estoy planteándome empezar un side project como sandbox para probar todas las pijadas que se me vayan antojando, y una de las dudas que se me plantea tiene que ver con la arquitectura de un pub sub con Kafka. De normal tendría un reverse proxy aka gateway que comprobaría el token y haría las historias que hicieran falta para redirigir la request al microservicio de turno a través de su endpoint, pero, ¿es correcta la idea de que en una arquitectura con pub sub, lo que haría sería producir el topic en el gateway y en cada microservicio (sólo uno en este caso, el backend de toda la vida vaya) tener un consumer que consuma los topics de una cola, de tal forma que el backend ya no tendría endpoints sino un switch dependiendo del tipo de topic que llamaría al servicio correspondiente (y este a su repo o lo que corresponda)? Es decir, me cargo los endpoints del backend y sólo me comunico con el exterior a través de los topics del gateway? ¿O es complementario y el consumer va también en el gateway?

2 respuestas
Kaledros

#4040 Normalmente el gateway es lo que expones a internet a través de endpoints HTTP y el gateway se comunica con los servicios bien con HTPP, bien con eventos de Kafka.

1 respuesta
B

#4041 sí, sí, me he explicado mal, pero la respuesta me ha resuelto la duda. Así que el consumo de las colas en un lado u otro depende de cómo lo quieras montar tú, ¿no? Ya sea a través de un intermediario, aprovechando el propio gateway, o directamente que cada microservicio consuma su propia cola.

1 respuesta
Kaledros

#4042 El gateway existe para que tu servicio se exponga al exterior sin exponerlo directamente. Por tanto, no tiene sentido que el gateway reciba mensajes de Kafka porque se supone que es la puerta de entrada, como su nombre indica, a tu servicio. A esa entrada le llegarán peticiones de frontales web, apps móviles y demás, pero nunca de topics de Kafka. Los consumers y producers van de gateway para adentro.

1 respuesta
Gigi_men

#4040 Como ya te han dicho, no tiene sentido que sea el Gateway el que envie produzca ya que este debe ser unicamente para proteger a tus servicios de lo que llegue desde internet. Cada Gateway te ofrecera unas funcionalidades distintas y ahi tendras que determinar cual te interesa mas a ti.

En tu caso, la lógica de producción deberia ser el primer servicio que hay detras del Gateway (Si lo he entendido bien).

Aún asi, un aviso que para tu caso de uso te puede interesar. Kafka es un pequeño monstruito que si que es verdad que para lo que te interesa te puede funcionar, pero Kafka realmente no es un sistema de colas, es un sistema de streams donde se presenta un Topic a varios consumer groups y cada uno de estos puede tener varias formas de consumirlos. A lo que quiero ir, que si es para jugar y aprender, bien. Pero si quieres presentar una arquitectura con algo mas de sentido, para tu caso sería más correcto utilizar un RabbitMQ, ActiveMQ o alguna alternativa asi.

Por experiencia te digo que administrar los Topics de Kafka es un dolor de huevos, sobretodo cuando juegas con plataformas que escalan de manera dinámica y tienes que rebalancear esos Topics.

1 respuesta
B

#4043 #4044 Entendido, gracias por la explicación. Realmente no hay caso de uso más allá de querer trastear con Kafka, de ahí el querer meterlo con calzador. El proyecto en sí va a ser una app de gestión de gastos que probablemente acabe usando en local para hacerme mis plots y demases usando las tecnologías que uso actualmente en el curro, pero haciendo hincapié en todas las pijadas a las que no puedo dedicarles el tiempo que me gustaría. Si coge forma abriré hilo para ir mostrando lo que vaya aprendiendo.

1
R

Que proyectos de ML/DL recomendáis hacer o como enfocarlos? Es que veo que hago siempre lo mismo y lo único que me cambia es el dataset

1 respuesta
richmonde

Me ha llegado esto en mi LinkedIn, por si le interesa a alguien:

Me gustaría compartirte una búsqueda que me han asignado en Mindata para el cliente Inetum.

Buscamos un perfil data para trabajar de manera hibrida en las oficinas de Barcelona
Responsabilidades

  • Diseñar procesos de integración de datos.
  • Realizar el análisis de los datos existentes en los distintos sistemas productores y consumidores, así como las transformaciones necesarias para su distribución.
  • Crear y mantener documentación técnica.
  • Asegurar el cumplimiento con el control de cambios, SDLC y estándares de desarrollo.
  • Monitorear, depurar y mantener la plataforma de integración.
  • Proporcionar soporte técnico para incidencias relacionadas con las integraciones, realizando diagnósticos y solucionando problemas de manera oportuna.
  • Mantenerse al día con las últimas tendencias y tecnologías en integración de sistemas para proponer e implementar mejoras continuas.

Requisitos
→ Estudios mínimos : Ciclo Formativo Grado Superior en Informática o Ingeniería técnica o superior equivalente
→ Experiencia mínima: Al menos 3 años
→ Habilidades / Experiencia:

  • Experiencia en procesos de integración de datos.
  • Conocimientos avanzados en herramientas ETL (preferentemente IICS).
  • Nivel avanzado en SQL.
  • Nivel avanzado en programación en al menos uno de los siguientes lenguajes: C#, Java, Python.
  • Experiencia integrando Business Management Tools corporativas como SAP, Salesforce, Oracle, entre otros.
  • Alta capacidad analítica y atención a los detalles.
  • Capaz de trabajar en equipo y de forma autónoma.
  • Orientado a resultados y enfocado a la mejora continua.

Idiomas: English written and verbal communication skills.

Se valorará positivamente:

  • Experiencia en modelado de datos.
  • Conocimientos de arquitecturas event-driven.
  • Experiencia en arquitecturas cloud.
  • Conocimientos de metodologías ágiles, DevOps y CI/CD.
El rango ofrecido es hasta 50k

No es una "mala" oferta pero desde luego, para mi desde luego es una pérdida de tiempo. Quizá alguien de aquí puede estar interesad@.

pantocreitor

Poco piden xD

Zireael

Hasta 50k en Bcn? Y todo eso? Me apunto

Kaledros

Eso que piden vale como mínimo 10k más. Yo pediría 70k.

1 respuesta