¿Qué deben saber todos los ingenieros de software integrados?

¡Hola! Nuestra empresa Existek tiene una amplia experiencia en el desarrollo de software y hardware embebido. Todos nuestros clientes están seguros de una cosa, fue difícil encontrar la compañía que pueda desarrollar sistemas embebidos.

Una de las razones es que es bastante difícil encontrar ingenieros de software con experiencia en el desarrollo de sistemas integrados.

Investigué y redacté el artículo con los criterios de evaluación para aquellos que buscan la empresa de desarrollo de software integrado.

Una parte importante de este artículo es sobre lo que deben saber los desarrolladores de software embebido para tener éxito en este dominio.

Cómo encontrar una empresa confiable de outsourcing de software integrado (puede leer el artículo completo siguiendo este enlace)

En este artículo encontrarás:

  • Cómo buscar la empresa de desarrollo de software integrado;
  • Cómo evaluar la experiencia previa de tales empresas;
  • Qué experiencia tecnológica deberían tener los desarrolladores de software integrado;
  • Cómo evaluar su enfoque para el desarrollo de sistemas integrados.

La siguiente es la extracción de este artículo:

“Los ingenieros de software integrados son una raza relativamente rara en estos días. En retrospectiva, hace 20 años, el tipo que estaba trabajando en la creación de prototipos de hardware era el mismo desarrollador que escribe código de bajo nivel para ese hardware. La industria ha cambiado desde entonces y las grandes empresas han asignado esas responsabilidades entre diferentes roles. Sin embargo, la encuesta muestra que esta vieja tradición está volviendo lentamente. En comparación, el 20% de los ingenieros de sistemas integrados trabajaron con hardware y software al mismo tiempo en 2010, cuando en 2017 se puede esperar que casi el 30% de ellos trabajen con ambos. Sería bueno si pudiera encontrar al menos uno de esos especialistas en la lista de CV y ​​contratarlo para su proyecto de outsourcing de software integrado. Definitivamente sería una buena adición al dedicado equipo de desarrollo.

Obviamente, el conjunto de habilidades técnicas requeridas por el desarrollador dependerá en gran medida del tipo de su proyecto y sus especificaciones. Además, intentaremos representar el retrato promedio del desarrollador de software incorporado. En primer lugar, debe tener experiencia en escribir el código en C y C ++. En segundo lugar, debe sentirse cómodo con Embedded Linux y los sistemas operativos en tiempo real (RTOS) que le permitirán trabajar con los recursos limitados del sistema y, por ejemplo, operar el uso de la CPU de la manera más efectiva. Estas son las habilidades esenciales que distinguen al desarrollador de software integrado.

Además, cuando los ingenieros que trabajan con software deben conocer exclusivamente los lenguajes de programación, un desarrollador de software incorporado debe tener un conocimiento profundo del hardware y los chips. Las nuevas tecnologías de procesador modernas son tan importantes como los lenguajes modernos. Los procesadores son el componente clave y los sistemas y el software integrados se crean a su alrededor.

Un desarrollador de software integrado calificado debe estar familiarizado con los sistemas de control, estructuras de datos, algoritmos y lenguaje de diseño de hardware.

A veces los proyectos requieren el conocimiento adicional de idiomas del programa. Estos lenguajes pueden ser Python, JTAG o Eclipse.

Cuando usted o su equipo interno realice las entrevistas con los desarrolladores offshore, preste atención a la eficacia con la que pueden expresar sus pensamientos e ideas sobre el diseño del sistema gráficamente. Cualquier desarrollador debe poder explicar lo que piensa usando un diagrama de bloques, imágenes o nubes o cualquier herramienta que ayude a describir los conceptos. Especialmente, esto es significativo en entornos de trabajo distribuidos donde la transferencia de conocimiento entre desarrolladores de software embebidos externos y desarrolladores internos en ambos sentidos es imprescindible “.

Consulte el artículo para ver la imagen completa y háganos saber en los comentarios si le ha gustado. Además, puede contactarnos directamente para obtener ayuda en el desarrollo de sistemas integrados de cualquier complejidad.

  1. Cómo leer una hoja de datos.
  2. Cómo leer un esquema.
  3. Cómo usar un osciloscopio.
  4. Cómo usar un analizador lógico.
  5. Cómo escribir en un puerto serie estándar.
  6. Cómo escribir una rutina de servicio de interrupción.
  7. Cómo usar un emulador JTAG.
  8. Cómo usar la memoria de manera eficiente / cómo reutilizar la memoria.

Hay cientos de otras cosas, pero vienen con experiencia. Tenga en cuenta que muchos de estos suponen que no tiene un sistema operativo, o que usted es el encargado de poner en funcionamiento la placa hasta el punto de poder cargar e iniciar el sistema operativo. Una vez que hay un sistema operativo real allí, el código puede estar más cerca del software de aplicación que lo que tradicionalmente se considera software embebido.

Hay muchas cosas que debes aprender para ser un buen ingeniero integrado. Embebido es hardware + software, a veces confundimos sin conocimiento de hardware y también podría ser un muy buen ingeniero embebido.

Lea este artículo para saber qué inclinarse para convertirse en un buen ingeniero integrado.

Espero que esto ayude.

More Interesting

¿Estás de acuerdo con un equipo de arquitectura en una empresa de tecnología?

¿Cuáles son los documentos que se crean durante el proceso de desarrollo de software y aplicaciones y cómo es la secuencia en la creación y la comunicación?

¿Qué enfoque (CMMI, ISO 9001, TickIT, 6Sigma) debería elegir como marco de calidad de desarrollo de software?

Soy un graduado de BTech y trabajo como desarrollador de software. ¿En esta etapa puedo estudiar para una AC y convertirme en un contador público?

Cómo terminar en una buena compañía de software si mi sucursal no es CS

¿Cuál es la mejor manera de construir un portal para desarrolladores?

¿Cuáles son las 5 principales compañías de outsourcing de software en el norte de India?

¿Es mejor unirse a Cerner como ingeniero de software o Chai Point?

¿Por qué las compañías de software tienden a tener grandes equipos dedicados de control de calidad, pero la mayoría de las compañías de Internet tienen pequeños?

Supongamos que tenemos 1000 servidores en producción. ¿Podemos asegurar que el software funcionará bien si solo tenemos 100 servidores en un laboratorio para control de calidad?

¿Alguien siente que los proveedores de software están perdiendo contacto con sus usuarios, diseños e idiomas que admiten un desarrollo fácil más que un uso fácil?

¿Qué es EFI (interfaz de firmware extensible)?

¿Los malos actores y las vulnerabilidades hacen que todo el cifrado bancario sea totalmente accesible para cualquier persona que pretenda hacer daño financiero?

¿Cuáles son sus actividades diarias como ingeniero de DevOps en su proyecto actual?

Para ser programador, ¿por dónde debería comenzar? ¿Qué idioma debo elegir? ¿Qué dirección debo tomar?