Soy graduado en ingeniería mecánica y recientemente me uní a una startup. Tengo un buen conocimiento de Python y Machine Learning.
Inmediatamente después de una semana, me pusieron en un proyecto relacionado con el procesamiento de imágenes, donde se me pidió que detectara objetos en el video en vivo desde una cámara web. Me sugirieron que hiciera eso usando TensorFlow, del cual no tengo idea. Así que cloné un proyecto de Internet que era similar al proyecto en el que estoy trabajando.
Seguí las instrucciones mencionadas con el proyecto pero no obtuve los resultados esperados. Ahora no puedo seguir adelante y no sé qué más hacer. Encontré muchos problemas, como algunos errores, problemas de memoria .
Lo que hice fue buscar el error en la Web e intenté encontrar una solución. El repositorio del proyecto que cloné tiene muchos archivos interrelacionados y no entiendo nada de lo que dice. No tengo a nadie que me guíe.
¿Es la misma situación en cada inicio, lo que implica:
o
Soy el único en el proyecto y no tengo compañeros de equipo en este momento.
Editar: algunas aclaraciones que me gustaría hacer aquí. Sí, soy ingeniero mecánico y no es inusual aquí en la India (especialmente en las empresas emergentes) contratar personas de otros campos en el dominio de la informática.
Y con respecto a mi conocimiento en Python y ML, conozco la teoría detrás de los algoritmos de ML y también tengo un conocimiento decente en Python. Pero Tensorflow es una biblioteca de aprendizaje profundo con la que no estoy familiarizado. Y cloné un repositorio que se hizo en Tensorflow, no en ninguna otra biblioteca, así que seguí sus recomendaciones.
También traté de ver los conceptos básicos de Tensorflow. Pero me di cuenta de que tomará mucho tiempo. Algo que no puedo hacer en una oficina tipo ambiente. Le había comunicado lo mismo al gerente y estuvo de acuerdo en que también lleva tiempo. Aún así, se me acerca con frecuencia y me pregunta si está terminado o no, lo que me da pánico. Incluso entonces no tengo idea de cómo proceder sobre cómo aprender sin ninguna guía. Claro que puedo aprender algo pero termino con muchas dudas y cosas que no están claras.
- Carezco de las habilidades apropiadas?
o
- ¿Es falta de orientación por parte de la empresa?
Careces de las habilidades requeridas para la tarea (no es tu culpa, pero es verdad). Ciertamente no se puede obtener el conocimiento de la noche a la mañana. Debe comprender el alcance y solicitar la capacitación requerida para actualizarse sobre el dominio y la tecnología. Solo así podrás progresar.
La empresa debería haber organizado la capacitación/orientación requerida, ya sea interna o externa, antes de asignar el trabajo a alguien con poco o ningún conocimiento sobre el dominio y la tecnología. En lugar de descargar el trabajo en alguien, deben tener una planificación adecuada que incluya capacitación e inducción.
En pocas palabras: no es demasiado tarde: informe a sus superiores sobre los obstáculos de inmediato y solicite ayuda / soporte y recomiende capacitarse en la tecnología / dominio / conjunto de herramientas.
Veo una serie de banderas rojas aquí.
En primer lugar, eres un recién graduado, es decir, sin mucha experiencia en desarrollo de software.
Segundo, te graduaste en ingeniería mecánica, no en software.
¿Y te dan como primera tarea reconocer objetos en una transmisión de video?
¿En serio?
Eso es como pedirle a alguien que pasó por un entrenamiento de boxeo de 6 meses, que vaya y pelee contra Mike Tyson.
En otras palabras, la tarea que te dieron está tan por encima de lo que se puede esperar razonablemente de un recién graduado, que ni siquiera tiene gracia. No digo que la tarea no sea factible, pero está en un nivel de desarrollador muy senior.
Sí, le faltan habilidades, pero eso es lo que se espera de un recién graduado. Careces de habilidades en relación con la tarea que te asignaron, pero te dieron algo que se debe dar a las personas con más de 10 años de experiencia profesional seria.
La siguiente bandera roja: le dicen que use alguna biblioteca/marco sin darle nada más preciso, ninguna documentación o proyectos de trabajo existentes ni nada.
Y después de una breve mirada a TensorFlow, que acabo de hacer, parece una cosa de aprendizaje automático muy general, sin ejemplos específicos para el reconocimiento de señales de video, lo que significa que probablemente requerirá mucho de su código además de lo que hace.
Esto significa dos cosas más:
Ah, y la idea con la que me encontré una y otra vez: que puedes asignar un trabajo muy complejo a quien sea, un estudiante en un período cooperativo, un recién graduado, cualquier cosa, y que en realidad no importa, es posible porque nosotros deseo que sea...
Huir.
Todo esto indica la falta de comprensión y pensamiento básico de su parte, la falta de reconocimiento de la realidad, y con tal actitud, es poco probable que lo logren.
Es mejor encontrar un nuevo trabajo, en una empresa normal, mientras todavía tienes este, que tener que buscar un nuevo trabajo desde la posición de no tenerlo, cuando las cosas finalmente se desmoronan.
Lo primero que debe hacer es asegurarse de que su jefe tenga una idea realista de su progreso. Dile "esto es mucho más difícil de lo que pensábamos", lo antes posible.
No caiga en la trampa de esperar hasta que finalmente llegue la fecha límite para admitir que aún no ha terminado.
Lo que estás tratando de hacer es difícil. Era imposible cuando muchos de nosotros comenzamos a trabajar, y todavía es un campo nuevo. Eres un miembro junior del equipo, que no ha hecho esto antes, por lo que no hay vergüenza en no poder hacerlo de inmediato.
Las empresas emergentes suelen ser optimistas. Hubiera sido genial para ellos si hubieras podido encontrar fácilmente una solución lista para usar que hiciera exactamente lo que querían, pero descubrir que no es fácil también es un conocimiento útil.
googlea el error y encuentra la respuesta
¡La mayor parte del tiempo, eso es lo que todos hacemos! La mayoría de las veces, tantos otros se han encontrado con el mismo problema que la solución está fácilmente disponible.
Esta vez es más difícil. Necesita absorber todo el conocimiento que pueda encontrar en el campo y convertirse en un experto. No te obsesiones con el problema actual, construye una base sólida. Lee todo lo que puedas encontrar. Si no tiene mucho sentido al principio, tome nota y regrese después de buscar las partes que no están claras. Trabaje con tutoriales, cree aplicaciones de prueba, cree sus propias pruebas.
Pero eso lleva tiempo, así que primero asegúrese de que su jefe esté de acuerdo. Él puede tener otras sugerencias u otras prioridades.
Está claro que estás atascado con algo y no puedes progresar. Y eso es algo perfectamente normal que suceda.
La primera línea de acción que puede tomar es hablar al respecto con su gerente/supervisor. Comparte lo que has hecho hasta ahora. Busque sus entradas. No dudes en mencionar que nunca antes has trabajado en TensorFlow. También comparta que ha intentado buscar un proyecto similar disponible en Internet y se ha quedado atascado tratando de entenderlo.
Siempre habrá algo que no sepamos y que necesitemos aprender o recibir la capacitación necesaria. Pídale a su supervisor/gerente que le proporcione la orientación de capacitación necesaria.
Es importante destacar que su gerente debe saber que usted no tiene conocimiento sobre una herramienta en particular (y eso está perfectamente bien). Es mejor no establecer expectativas incorrectas.
Si nadie más domina la tecnología necesaria, de hecho, es posible que su startup necesite contratar a alguien con la experiencia. Pero esa decisión está en manos de la gerencia.
Sin embargo, a veces no siempre es factible tener expertos a la mano, y las nuevas empresas generalmente están muy limitadas para obtener recursos. Así que Internet se convierte aquí en tu mejor amigo. Debe buscar ayuda en sitios como Stack Overflow . Trate de desglosar el problema y partes pequeñas, entiéndalo claramente y busque respuestas de expertos que tengan experiencia en el manejo de este problema. Compartir una consulta claramente escrita en Stack Overflow es la forma mejor, más fácil y técnicamente más económica de obtener ayuda.
Carezco de las habilidades apropiadas?
Ese puede ser el caso, pero nunca se puede saber todo lo necesario para realizar una tarea. El aprendizaje constante y en el trabajo sería un tema recurrente a lo largo de su carrera.
¿Es falta de orientación por parte de la empresa?
Teniendo en cuenta que su empresa es una startup, puede verse limitada de muchas maneras en términos de procesos, personal y capacitación. Eso no implica nada negativo sobre la empresa, solo que así son las startups por naturaleza.
Solo necesita hablar las cosas y buscar ayuda. Por favor, no se quede atascado luchando con el problema usted mismo y establezca expectativas incorrectas.
La comunicación abierta es muy importante y aconsejo hacerlo lo antes posible.
También tenga en cuenta que el aprendizaje constante será una parte persistente de su carrera. Con el tiempo, mejorará en dónde y cómo hacer el aprendizaje necesario.
Mi consejo: rescata ahora antes de que sea demasiado tarde. Muchas personas aquí dirán que es una gran oportunidad para aprender algo nuevo y ampliar su conjunto de habilidades. Pero corres un riesgo aún mayor (y uno realista) de que la puesta en marcha se hunda, y todos sean despedidos y los jefes rescaten con grandes bonos en efectivo. Te quedarías atascado con algo vago que no entiendes. "¿Qué hiciste en X?" "Hice un servicio de IA de video en vivo que identifica objetos". "Vaya, eso suena genial. ¿Qué tipo de tecnologías usaste?" "Bueno, descargué algo al azar que no tengo idea de lo que hace ni entiendo los errores que obtuve. Simplemente me di por vencido hasta que el inicio se fue cuesta abajo". "Está bien, gracias, te llamaremos".
Piénsalo por un segundo: no tienes idea de lo que estás haciendo. Quieren que hagas un producto clave. No tienes a nadie a quien preguntar sobre algo que debería saber. Eso grita que algo anda mal. O se creen que cualquiera puede hacerlo y buscan mano de obra barata. O les interesa más sacar efectivo y si el producto falla por lo menos lo vendieron. De cualquier manera no es bueno.
¿Es la misma situación en cada inicio, lo que implica:
No, pero es bastante común tener nuevas empresas sin un conocimiento tecnológico real de cómo hacer que su idea tonta funcione.
Cuando una startup no está organizada técnicamente, a menudo es una señal de una mina de financiación. Un producto de trabajo es de menor importancia que la comercialización de más financiación. Entonces, contratar a las personas equivocadas para un trabajo puede suceder y realmente no importa. Contratar a un graduado y luego asignarle algo en lo que no tiene experiencia sin ayuda no es una buena señal.
Neo