Diría que una sólida formación en Linux constituiría saber qué es un sistema operativo tipo Unix. Probablemente no necesite ser un verdadero arquitecto de sistemas Linux serio, pero debe comprender los conceptos generales que son comunes entre los sistemas operativos tipo Unix ‘.
El aspecto más simple de entender es que todo está configurado en archivos y protegido por un modelo de propiedad y permiso. Comprender este modelo de permiso y cómo manipularlo es muy importante, ya que afecta el comportamiento y la seguridad del software. Aprenda a navegar por el sistema de archivos conociendo algunos de estos archivos, dónde se encuentran comúnmente, y su impacto en el sistema es beneficioso para la configuración.
Aprenda un poco sobre el tipo de núcleo que utiliza Linux y cómo los módulos (por ejemplo, los controladores) se instalan en él y cómo se convierten en “parte” del núcleo.
- ¿Cuáles son las compañías que vinieron a ser reclutadas en la Universidad SASTRA este año académico (2014-15) y cuántos estudiantes fueron reclutados por cada compañía?
- ¿Por qué querría un nuevo ingeniero de software graduado unirse a Databricks sobre grandes empresas como Google, Facebook y LinkedIn, o viceversa?
- ¿Es mejor enviar un correo electrónico o llamar a los ingenieros de software que desea contratar?
- ¿Por qué las compañías de software necesitan un servicio de reclutamiento de TI dado Google, Linkedin y Facebook?
- ¿Qué tipo de preguntas se me harán para un puesto de ingeniero químico de nivel básico?
También desea leer cómo funciona un shell y comprender cómo facilita un entorno básico para un proceso (Bash Guide for Beginners explica fantásticamente). Comprenda cómo funciona fork y exec para ejecutar un nuevo proceso. Familiarícese con algunos comandos generales de Linux y cómo escribir un script de shell.
Finalmente, comprenda cómo compilar software en Linux. Tendrá que trabajar con una gran cantidad de software de código abierto que usted mismo construya. Muchos proyectos de código abierto están diseñados para ser compilados en forma cruzada para diferentes sistemas o compilados con diferentes conjuntos de características dependiendo de la plataforma de destino. Un sistema común para facilitarlo utiliza herramientas como autoconf y un script de configuración en el proyecto de código abierto. Al principio encontré muchas de estas inundaciones, pero si investigas un poco, todo tiene sentido.
Estas son prácticas bastante comunes en sistemas tipo Unix. Una sólida formación en Linux cubriría al menos estos temas.