0

Cómo ganarse la vida con sistemas embebidos

Uno de los sueños más grandes que alguien tiene es ganarse la vida haciendo lo que ama. Para todos los hackers y makers apasionados por los sistemas embebidos, puede tener sentido inicialmente buscar el diseño de sistemas integrados como una posible carrera, pero sin tanta información sobre los tipos de requisitos o pasos necesarios para asegurar una oferta de trabajo, puede parecer desalentador intentar entrar en el campo.

El YouTuber iAyan Pahwa actualmente trabaja como ingeniero de software embebido, después de haber estado en el campo durante dos años, con experiencia previa como aficionado trabajando con microcontroladores, motores y programación en el dominio embebido. En el siguiente video, colocado más abajo, proporciona su opinión sobre lo que necesitas saber para obtener ese primer trabajo.

Beneficios

Los trabajos en sistemas embebidos tienden a pagar bien y tienen muchas oportunidades para trabajar en proyectos interesantes. Dado que la electrónica de consumo existe en todas las industrias, no faltará ninguna empresa que busque contratar a alguien con conocimientos en sistemas embebidos.

Hardware embebido

Estos puestos suelen ocuparse del diseño esquemático, el diseño de placa integrada, electrónica de potencia, diseño de PCB y las tareas que dependen del dominio analógico. Deberás poder utilizar algunos software CAD y EDA y tener experiencia con la depuración analógica.

Si bien hay toneladas de oportunidades en el hardware embebido, Pahwa se limita a hablar sobre la intrusión en el software embebido.

Software embebido

La mayoría de los ingenieros de software trabajan en C, trabajando en cargadores de arranque, middleware o desarrollo de kernel. Lo que debes saber es CS50 (para C básico), aprender a programar controladores de dispositivos y programación de sistemas.

Además, aprender a programar microcontroladores es esencial. Incluso si terminas en VLSI o la automatización de control electrónico, al menos aprender a programar un Arduino es un paso muy útil para profundizar en los aspectos de hardware de los sistemas embebidos. Si bien Arduino está programado en un lenguaje basado en C ++, los programadores familiarizados con C no deberían tener ningún problema con la sintaxis.

Aprender a programar microcontroladores en C o Assembly es necesario para poder optimizar tu código. Ser capaz de comprender la arquitectura y los registros de la computadora aumenta tu conocimiento del diseño interno de los microcontroladores y cómo se usan en la producción. Las preguntas comunes que encontrarás incluyen punteros de pila, desplazamiento hacia la izquierda y hacia la derecha, movimientos de registros y cómo controlar la memoria.

Más allá de comprender los diferentes procesadores utilizados en la industria, también es útil comprender los sistemas operativos, especialmente aprender las entradas y salidas de Linux. Probablemente te preguntarán acerca de las llamadas al sistema, los sistemas de archivos y la línea de comandos durante las entrevistas para evaluar tu comodidad en el entorno Linux. Los lenguajes descriptores de hardware (HDLs) como Verilog o VHDL también son habilidades comunes requeridas por los ingenieros de software embebido.

Moralejas

Pahwa entra mucho más en detalles sobre consejos específicos para estudiantes de sistemas embebidos que buscan obtener sus entrevistas para roles de sistemas integrados, así como para cualquiera que no esté seguro de si realmente le apasiona esta industria.

Se aprenden muchas de las habilidades que tienen los ingenieros de sistemas embebidos, y es probable que si ya eres un aficionado, ya estés familiarizado con muchas de las herramientas y procesos necesarios para los sistemas embebidos. Habilidades como depurar Assembly y trabajar con hojas de datos para microcontroladores desconocidos solo pueden venir con práctica y tiempo, por lo que pasar tiempo trabajando en proyectos y familiarizarse con los entornos existentes es crucial para el éxito en el campo.

Sobre todo, mantenerse motivado y buscar la experiencia de otros que ya están en el campo es una gran ventaja. Dado que el campo es tan amplio, no hay límite para las oportunidades que encontrarás y los recursos disponibles para un aspirante a ingeniero de sistemas embebidos.


Fuente: Hackaday