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?

R

#3240 Lo primero todo es ver como estan los maquinas

14
pantocreitor

#3240 te diría que si no sabes exactamente qué hace investigases que es el machine learning y cómo funciona.
Una vez lo sepas vas a saber que hace.

1 respuesta
R

#3242 la cosa esq todos esos puestos son prácticamente iguales los requisitos que piden

smarquezp

#3087 Actualizo un poco.
Ese fin de semana estuve un poco agobiado y el lunes pedí hablar a mi jefe de equipo, ya que íbamos a tener una reunión para comentar el año / revisión anual pero no me dio fecha, por lo que dije de adelantarla y así comentarle un poco.

Le estuve comentando que estaba un poco "aburrido", que me sentía estancado y que no me sentía muy motivado con lo que estábamos haciendo. Que llevábamos bastante tiempo sin un proyecto considerable donde programar y lo último que hemos estado haciendo es migraciones a GKE y un proyecto con código que cualquiera se tiraría de los pelos. Además, el proyecto de integración ICD para migrar datos externos a nuestra base de datos, y que solamente estaba comparando campos entre base de datos para ver si coincidían y hablar con gente de la otra empresa para consultar las dudas.

Vamos, un aburrimiento total.

Su respuesta fue que en este tiempo me he hecho un hueco importantísimo en el equipo pero sobre todo en la empresa, que me tienen muy en cuenta y el haberme dejado teletrabajar completamente es una muestra de ello, porque a otros compañeros no se lo permitían.
Que están muy contentos conmigo y que voy a promocionar a "senior" porque obviamente me ve al nivel de otros compañeros con mucha más experiencia. Por otro lado, comentaba que este proyecto con código spaghetti ya terminará y nos pondremos con otra cosa (que por cierto terminé mi parte aquí, y me cayó otra pero mucho más simple como para demostrarme que me había escuchado y me quería quitar de pegarme con ese proyecto).
Al igual que el ICD, que me comenta que se había confiado mucho en mí para estar entre las personas de la migración, etc etc.

Comentándolo con un compañero de mi equipo que lleva 5 años y está igual, lo único que nos ata realmente es la estabilidad y que queremos estar preparados para una entrevista externa, porque él ha hecho un par de ellas fuera y no le han aceptado. Yo aún no lo he intentado.

Sinceramente, creo que visto lo visto, fue agobio de un fin de semana que me explotó y ese lunes me dí alas y me puse a terminar todo lo que podía y avanzar, tranquilizarme, y tirar para adelante.

Sin embargo, mis pensamientos sobre irme no cambian y creo que voy a intentar darle caña y aprender, sobre todo a nivel teórico, hasta abril que cumplo los 3 años. También preparar el inglés y si me veo con confianza tirar para fuera...

Mi plan es seguir con Java, pero no se si quedarme aquí solo o mirar algún framework como Angular o algo así...

2 respuestas
Sphere

#3244 Mi consejo es que no pierdas el tiempo. Si la empresa tiene unas necesidades que son un callejón sin salida a nivel de progresión laboral para ti y encima estás más que acostumbrado a lidiar con estas, no te van a poner en otro proyecto porque se lo pidas si a ellos no les viene bien. Lo de hacer un par de entrevistas y rendirse si no salen bien lo he visto muchas veces y no tiene sentido. Yo mismo hice chorrocientas cuando iba buscando algo mejor y te pueden eliminar del proceso por multitud de razones. Buena parte de ellas están fuera de tu control, y las que sí lo están se mejoran con experiencia tanto en lo tuyo como realizando las entrevistas.

Sigue haciendo entrevistas. Huele a cárnica que te pinten el teletrabajo como privilegio, y si llevas 3 años ahí ya son demasiados.

3
CaNaRy_r00lz

#3244 Tiene pinta que te ha soltado el discurso tipico, y como entre otro proyecto igual veras como te toca la misma mierda, si te sientes estancado muevete, la unica forma de progresar en posicion y dinero es moviendote, si te quedas en el mismo sitio no avanzas

laZAr0

¿Qué recursos podréis recomendar para tener una base en algoritmia, estructuras de datos, patrones de diseño, etc., antes de empezar a resolver problemas tipo leetcode?

1 respuesta
Mandarino

#3247

Si te sobra el dinero, puedes ir por el "leetcode premium" que tienen cursos sobre todos los basicos que necesitas para ir resolviendo problemas de algoritmia: https://leetcode.com/explore/
Yo pillé el premium porque en mi trabajo te cubren gastos para "learning and development", si no lo veo caro.

De gratis, me he ido apuntando varias webs que he ido encontrando (en inglés todas), que no te asuste lo de "competitive programming" porque explican las cosas bien:

2 1 respuesta
laZAr0

#3248 vale gracias, les hecho un vistazo cuando tenga tiempo, ya comento impresiones. Y no, desgraciadamente no me sobra el dinero para ir pagando premiun de nada y veo que son 35 pavos al mes, qué bárbaro macho. :(

1 respuesta
B

#3249 Del tirón a HackerRank. La diferencia fundamental entre LeetCode y HackerRank es que en HR los problemas no se plantean como retos sino como lecciones. En cada una de las "lecciones" se te plantea parte del código que has de resolver, por lo que tienes un punto del que partir cuando no sabes estructurar o abordar un problema. Cuando, aún así, no sepas por dónde seguir, Youtube es tu amigo o la propia sección de comentarios donde hay cientos de respuestas aportando las soluciones a cada problema. Aprender de forma reactiva para mí es la clave para absorber el conocimiento.

Al final es cuestión de hábito; verse expuesto a determinados problemas una y otra vez y saber identificarlos para establecer analogías entre ellos y saber determinar cuándo puedes aplicar técnicas distintas que hayas ido aprendiendo para obtener resultados equivalentes. Al principio, como en todo aprendizaje, tendrás islas de conocimiento que no sabrás muy bien cómo comunicar o cohesionar entre sí, pero a medida que vayas identificando los patrones y paradigmas esenciales, empezarás a ver esas islas como penínsulas y todo irá cobrando sentido. Requiere de esfuerzo personal, ya que no es algo que adquieras por ciencia infusa y a cada persona le hace click en momentos y por motivos distintos, pero una vez eres capaz de verlo todo en perspectiva el extender conocimientos se convierte en algo trivial.

3 1 respuesta
D

Buenas, vengo a comentar algo que me esta sucediendo ultimamente, me encuentro que a veces siento que no se por donde tirar en algun ejercicio de programacion, que literalmente no tengo ni idea de como continuar, a veces saco adelante el ejercicio y sale todo fluido y otras en cambio no se por donde empezar y me siento como que no estoy aprendiendo o que no tengo idea de aplicar lo que he estado estudiando del temario, a alguien mas le ha pasado?, ( no hablo del sindrome del impostor por que no estoy en ese nivel).

1 respuesta
Konishi

#3251 muchas veces sacarte el problema de la cabeza te puede ayudar a verlo de una forma distinta. Anda que muchas veces no he dejado alguna cosa atascada, me he ido a dar una vuelta y al rato se me ha vendido un momento Eureka. Seguro que la mayoría de seniors del hilo coincidirán.

Luego otra cosa puede ser que te falten algunos conceptos, ya sea porque no lo has dado o no has entendido el motivo por el que existe/se hace así. En esos casos personalmente suelo buscar explicaciones distintas, ya sea documentación o algún vídeo/artículo explicativo. Si no de última a preguntar exponiendo el problema que encuentras, cómo lo planteas y lo que ya has probado/crees que no funciona.

1 respuesta
laZAr0

#3250 Muchas gracias por tu respuesta, parece muy útil. Y si me permites me gustaría decirte que te expresas muy bien y da gusto leerte.

1 respuesta
D

#3252 Gracias konishi, si que es verdad que tengo que pensar mas en lo de 'pensamiento abstracto' y por ejemplo cuando leo código suelo entender como funciona x funcion (valga la redundancia), pero tengo momentos donde he de implementar algun metodo o algo y no se por donde empezar, eso me hace sentir como que no se programar o me como la cabeza y pienso si de verdad he entendido lo que he ido estudiando no se, pero termino por buscar muchas veces la solucion en google y me frustra, que entiendo que es normal al estar comenzando pero bueno me jode cuando me pasa.

Cerealfriend

Después de haber sido ghosteado y rechazado en varias entrevistas, estoy planteandome en cursar algún tipo de master o bootcamp que me especialice mejor en el ámbito IT.

Ya comenté en el hilo hace unos meses un poco mi perfil. Ing. Electrónico recién graduado, actualmente trabajando en una consultora tratando temas energéticos que poco tienen que ver con IT o mi especialización.

Lo que mas me apasiona es el desarrollo de programas y/o funciones, algoritmos que tengas que darle mucho al coco, temas de blockchain y criptografía igual. También la programación a bajo nivel C/C++ , donde hay que gestionar memoria etc. me parece muy divertida (esto sí lo hemos visto en la carrera con assembly y C), pero en definitiva, hacer cosas productivas donde desarrollar un producto o una idea. Es lo que realmente más me apasiona.

Y estoy perdido.

Me he planteado hacer un master o bootcamp de Big Data y Data Science, alguno de robótica... pero no tengo ni la mas remota idea de como poder especializarme en los ámbitos que me gustan.

Puede que el intentar hacer un master/bootcamp para encontrar trabajo sea el camino fácil en vez de desarrollar yo mismo mis propios proyectos, pero pienso que actualmente con mi perfil, pocas empresas IT me desean y si sale alguna oferta de software embedded (que es donde mas puedo estar enfocado), suelen pedir min 2 años de experiencia.

Los que hayáis cursado masters/bootcamps, ya con una ingeniería, lo veis buena elección? Y por el contrario los otros veis que no es para nada necesario?

Algún bootcamp/master que conozcáis que de verdad sirva para algo?

Muchas gracias ❤

1 respuesta
richmonde

#3255 Yo puedo decirte como DS Senior (a poco de Principal, aunque me hago mis pinitos de Product Manager en los proyectos donde estoy), que cuando me llegan CV de gente que viene de Bootcamps sin experiencia, y gente que viene de empresas aunque sean ajenas al sector pero que pueda aplicar conocimientos, prefiero los segundos a los primeros.

Eso si, para posiciones de 1-2 años. Sin experiencia, por desgracia no estamos contratando, y la mayoría vienen de Internships ya sea de convenios con centros educativos, masters, o universidades.

Alguno si que pasa ese filtro si viene referido por alguien que conozca la persona, y tenga buenas referencias. Aunque eso, como digo, solo te permite saltar el cribaje inicial. Las pruebas tecnicas, entrevista, defender la prueba técnica, preguntas de experiencias academicas/laborales aplicables, y el "cultural fit" no se escapa nadie.


Mi consejo, es que antes de hacer nada:

  1. Pienses que querrías hacer, pero piensalo bien.
  2. Busca sobre ello, especialmente el "dia a dia" de trabajo de eso.
  3. Mira perfiles (linkedin, o webs personales) de personas que trabajen de ello en linkedin, de varias empresas y perfiles, no te centres solo en un perfil de una empresa
  4. Mira que stack tecnologico, estudios, publicaciones, etc... tiene, y si encaja con lo que te gusta
  5. Visto eso, pregunta aqui que recomendaciones sobre eso podríamos darte.

Es muy facil plantearse eso, tirarse al agua, y luego darte cuenta que estas solo en medio del puto oceano, sin indicaciones, sin saber si hay tierra cerca, y eso es muy agobiante en el tema laboral.

Y ya, para cerrar... lo más importante de todo:

PACIENCIA y CONSTANCIA; Los juniors hoy por hoy, lo tenéis MUY jodido, porque se ha viralizado esta profesion (IT y sus ramas), y de haber mucha oferta laboral y pocos candidatos, ahora la oferta se ha reducido, especializado (y madurado), y hay MUCHOS candidatos que quieren empezar.

4 3 respuestas
R

#3256 yo ahora mismo soy ingeniero de datos y quiero pasarme a la ciencia de datos. Algún consejo? Tengo 2 años de experiencia

2 respuestas
Eckooo

Creéis que el sector de cybersec esta menos colapsado que el de desarrollo?

1 respuesta
Cerealfriend

#3256 Muchísimas gracias por la respuesta, de verdad que es algo que ya tenia en mente pero hasta que alguien no te lo dice claro no lo asimilas.

La intención de hacer un masters es por lo último de tu respuesta:

PACIENCIA y CONSTANCIA; Los juniors hoy por hoy, lo tenéis MUY jodido, porque se ha viralizado esta profesion (IT y sus ramas), y de haber mucha oferta laboral y pocos candidatos, ahora la oferta se ha reducido, especializado (y madurado), y hay MUCHOS candidatos que quieren empezar.

Veo que es una forma fácil pero costosa (aunque me permite seguir trabajando y para pagarme el master) de tener algo más para diferenciarme y meter un pie en el mundo IT.

DS me gusta, lo veo un poco jack of all trades ya que los datos son todo, tanto como desarrollar backend de una app, hacer infraestructuras para tragar esos datos, utilizarlos para modelar algoritmos ML o tomar decisiones para un proyecto/empresa. También veo que la habilidad de tener electrónica me permite tomar el camino de dispositivos IoT mezclado con DS.

Todo esto es muy bonito, pero mis conocimientos no son más que los temas tratados enmi TFG, lo aprendido en la carrera de C/Assembly y algún curso de Python que he hecho. Y esto sé que al final es lo que más importa, los proyectos y el sefl-teaching, pero veo que no tengo la oportunidad si no consigo alguna titulación extra para diferenciarme...

De verdad, gracias otra vez por la respuesta, tengo estas navidades para darle vueltas al asunto e intentar aclarar mis ideas.

NocAB

#3257 por curiosidad, por qué quieres pasar de ingeniería de datos a ciencia de datos?

Diría que actualmente hay más ofertas (y mejores) de ingeniería de datos que de ciencia de datos.

1 respuesta
R

#3260 me parece aburrido lo que hago

1
SupermaN_CK
1
B

#3253 pa' eso estamos y gracias alma de cántaro.

En otro orden de cosas, uno que sale del "consultora hell" por fin -lo suyo me ha costado- y se mete en un proyecto bastante tochete de building information modeling con un stack que me mola. Hasta la punta del cipote estaba de hacer entrevistas, la verdad; como me traten medio bien, echo raíces aquí.

1 respuesta
Cryoned

#3258 no, está petado de gente igual y es uno de los que más talento tiene y la competencia es más dura por tener las plazas de trabajo mucho más limitadas

D

#3263 Enhorabuena!!, joder que ganas de llegar al punto de poder empezar a echar cv, se que hace falta paciencia mientras se aprender pero que ganas.

1
NocAB

#3256 una pregunta, siguiendo un poco con lo que dije en #3260, tú también tienes la impresión de que el mercado laboral de la ciencia de datos se ha frenado mucho a favor de la ingeniería de datos? Tengo esta sensación muy clara desde hace unos dos años pero no sé si es algo subjetivo o tal vez que sólo pasa en entry level.

1 respuesta
richmonde

#3266 Son dos ramas muy diferentes, y si bien es cierto que de Ing de Datos hay mas ofertas y buenas, la Ciencia de Datos tiene mucha más salida, variación de rol, y te permite crecer más en cuanto a verticalidad y horizontalidad.

Hay más oferta de Ing. de Datos por el simple hecho que ahora mismo, absolutamente todo deja rastro y es trackeado. Dicha información para que los DS la conviertan en decisiones de negocio, tiene que ser tratada, limpiada y guardada. Y esto, cada vez tiene más complejidad. No es solo guardar datos y procesarlos, es también la escalabilidad de los mismos, y la accesibilidad posterior. Tener una ingesta de 1TB al día es buena, siempre que sea escalable, y despues que los DS puedan leerla y trabajarla sin problemas. (DE = Data Engineer, DS = Data Scientist, en adelante)

Ahora bien... si una tabla de una BBDD ocupa 19TB, ya no solo el DS tiene que saber como acceder bien a esa información (que es un reto de cojones xD) sino que el DE (y todo el equipo) tienen que hacer un trabajo excelso en particionar, distribuir, y procesar eficientemente esos datos para limpiarlos, procesarlos bien, y posteriormente crear tablas indexadas, con sus indices, y mil mierdas más, para que cuando el DS procese los 19TB, realmente solo acceda de manera eficiente a los 78GB que realmente contienen la información que necesita.

Porque hay más ofertas?

  • Porque para leer los datos en un proyecto, necesitas 1 Sr DS, o 2 DS.
  • Para procesar la ingesta, posiblemente tengas 3 Sr DE, o 5 DE. No es solo leer los datos, hacer tambien los dashboards, los procesos ETL, las integraciones con los SDK de 3os, la comunicación con los BE Devs de los proyectos de producto (Glovo App, Candy Crush, Netflix App, Netflix TV App, etc...)

Es normal que haya más oferta :)

Y especialmente más marcado en entry level. De hecho, el entry level de Data Science, suele ir más asociado a un crecimiento de rol de un perfil Data Analyst, que ha crecido en la parte más puramente estadística, y no tanto la parte de extraccion de insights.

El gráfico ilustra un poco esto


#3257 La pregunta es porque quieres hacerlo, que te motiva o llama de ello, y que esperas con el cambio. Consejos muchos, pero puedo decirte que del trabajo de DE, a DS, lo único que podrás heredar es el codigo Python/SQL/R y la "lógica" de programación.

El día a día de un DS varia mucho, muchísimo, incluso dentro de una empresa con diferentes areas de negocio.

  • Un DS que reporte a producto como funciona el proyecto, tendencias, patrones de usuarios/clientes, ya sea bien con reports, analisis adhoc, o bien haciendo dashoboards
  • Un DS que está en un equipo central de AI haciendo sistemas para dar soporte a producto, creando las herramientas para automatizar la evaluacion de experimentos.
  • Un DS que únicamente hace experimentación de variantes de un producto con AB testing, y decidir cual es la variante ganadora realizando tests, muestreo, regresiones, etc... para poder luego exponer los cambios a producto, y impulsar nuevos desarrollos.

La lista es interminable, y todos estos son perfiles de DS.

Cual es la rama que te llama la atención?

1 2 respuestas
R

#3267 sinceramente porque creo que se me sacaría más partido en DS por mi formación y me parece más entretenio pelearme con esa parte analítica que con una ETL

1 respuesta
richmonde

#3268 Si se puede preguntar, ahora mismo en que sector trabajas? Retail, Banca, SaaS, GaaS? Y, dentro de la empresa tienes opcion al cambio?

1 respuesta
R

#3269 estoy en una consultora