Para alguien que disfruta de la programación, ¿debería especializarme en mecatrónica y robótica o informática?

Usualmente no. O al menos tendrías que desarrollar por ti mismo la habilidad necesaria para ser un ingeniero de software completo.

No puedo hablar de todos los programas posibles, pero generalmente en los programas centrados en robótica, la parte CS básicamente omitirá todas las redes, bases de datos, compiladores, idiomas para desarrollar habilidades en algo más relacionado con arquitecturas de bajo nivel, con un gran enfoque en el diseño electrónico. (VHDL), aplicaciones integradas (aprenderá a diseñar filtros, etc.) y pasará la mayor parte de su tiempo en entornos cerrados como Matlab y Labview.

El curso tradicional de CS también se suele dar con una inclinación diferente: en un curso de visión por computadora, pasará su tiempo hablando de la calibración de la cámara, la geometría del espacio tridimensional y nunca hablará realmente de una CNN. Del mismo modo, un curso sobre aprendizaje automático apenas tocaría el aprendizaje profundo, pero se centrará en el modelo de Markov, los filtros de Kalman, etc.

También tenga en cuenta que la robótica requiere un conocimiento profundo en aspectos de ingeniería mecánica (para la cinemática) y eléctrica (para el procesamiento de señales y técnicas de control) que están lejos de no solo el trabajo diario en las industrias de software, sino que también son muy diferentes en su aprendizaje ruta: Probablemente te emborracharás con análisis complejos y mucho antes incluso de hablar sobre Programación Orientada a Objetos.

La mecatrónica y la robótica no son solo programas. Ambos son campos interdisciplinarios e involucran materias de matemática avanzada, ingeniería mecánica, electrónica y eléctrica, estadística, ingeniería de control de procesos y muchos otros campos. Eso es lo que aprendí al hacer mi maestría en robótica. Para mí, fue una elección fácil ya que me encantaba programar, hacer proyectos de electrónica, tenía una licenciatura en ingeniería mecánica. La robótica es un campo muy vasto en sí mismo, pero podría agruparse en dos campos principales, el primer campo es el de robots industriales que incluye brazos robóticos e implica la programación de esos sistemas junto con algunos sensores industriales para aplicaciones como soldadura, pulido, corte, fresado, etc. segundo campo son robots autónomos , que incluyen robots de programación que pueden no ser fijos y tienen algún tipo de autonomía basada en el nivel de algoritmos. Los robots humanoides, los drones, las aspiradoras autónomas, los autos autónomos, etc. se incluyen en esta categoría. Este es un campo intensivo de algoritmos y utiliza datos de fusión de sensores, lo que significa que un sistema toma medidas de varios sensores diferentes para calcular una medida o tomar alguna decisión, el ejemplo simple es el reloj de seguimiento deportivo que utiliza giroscopio digital, altímetro y GPS para registrar su caminar y correr datos. Estos sistemas pueden ser de cualquier tipo dependiendo de la configuración del hardware y el software.

Puedes estudiar robótica y sí, puedes conseguir un trabajo como desarrollador de software, ya que harás mucha programación durante el curso. Muchos de mis compañeros de clase están trabajando como desarrolladores de software después de terminar sus cursos.

Creo que puedo responder a esta pregunta con cierta confianza. En 2011, estaba en la misma posición que tú. Simplemente me encantaba programar y era bastante bueno en eso, si lo dijera yo mismo. Pero mi familia me animó a tomar otra corriente porque la informática era demasiado corriente (?). Por suerte, me metí en la mecatrónica en una buena universidad. Estaba un poco aprensivo pero también entusiasmado con la posibilidad de estudiar Robótica. Dejé en claro desde el principio que quería especializarme en software dentro de la robótica.

Todo estuvo bien hasta mi segundo año de universidad. Los sujetos comenzaron a inclinarse hacia Sistemas de Control y Dinámica de Robots. El problema con Mechatronics es que se trata más del aspecto mecánico de la robótica que del lado del software. No hubo absolutamente ninguna codificación involucrada, excepto para la programación de PLC, que no está relacionada con los lenguajes de programación orientados a objetos que me encantaron. No estaba satisfecho con mi especialidad. No pasó un día sin pensar “¿Qué pasaría si hubiera elegido la informática en su lugar?”

Dicho esto, estudié en una universidad india donde el concepto de menor no existe. Si estás en una universidad donde puedes tomar un Menor, por supuesto, toma Mecatrónica y Robótica y menor en Informática. De lo contrario, prepárese para el hecho de que hará mucho más que programar si toma Mechatronics. ¡Será divertido! Simplemente no de la manera que esperabas.

En cuanto a tu segunda pregunta, sí. Estoy cursando mis estudios de posgrado en Controles con una especialización en Ciencias de la Computación y, por lo tanto, puedo buscar trabajo como Desarrollador de software en empresas de automatización. Es un campo prometedor.

¡Buena suerte!

Yo recomendaría la informática. La razón es que elegir mecatrónica y robótica se está especializando demasiado pronto. Hay mucho que aprender y no desea reducir su enfoque demasiado temprano en su carrera. Tenga en cuenta que es probable que tenga una carrera de 40 años, por lo que la amplitud y la profundidad del conocimiento son importantes en esta etapa de su carrera.

Me encantaba programar cuando estaba en la universidad y estaba programando cosas más grandes y complejas a medida que pasaba el tiempo. Mi conocimiento de las matemáticas y la física y la aritmética informática a menudo entraba en juego mientras diseñaba software para sistemas de radar y sistemas de guía de aviones, etc. Pero en el transcurso de una carrera de 40 años, finalmente pasé eso a puestos más responsables que aprovecharon la amplitud de mi conocimiento. Por ejemplo, estaría diseñando una nueva computadora o sistema operativo; implementar un compilador; gestión de proyectos donde habría programadores que me informarían; diseñando sistemas muy complejos como un sistema para navegar en un barco donde otros hicieron gran parte de la programación. En todos estos casos, mi conocimiento de programación fue valioso, pero no es lo que pasé la mayor parte de mi tiempo haciendo. Luego pasé a actividades tales como: dar muchas presentaciones para obtener apoyo financiero para ideas que mi equipo y yo estábamos desarrollando; diseñando sistemas realmente grandes y complejos que serían implementados por equipos de quizás 30 programadores; liderando grandes proyectos; enseñar a otros cómo liderar grandes proyectos; y eventualmente ayudando a la alta gerencia con la planificación estratégica. Todavía disfruto de la programación, pero pasé a puestos mucho más responsables (y mejor pagados).