2009-07-04 11 views
7

¿Cuánto debe saber un programador sobre el administrador del sistema? Quiero decir, obviamente cuanto más, mejor. Pero por el bien de la discusión, ¿cuál es el promedio que un programador debería saber?¿Cuánto debe saber un programador sobre el administrador del sistema?

He visto a mi amigo (un programador) diseño de esquema de base de datos, copia de seguridad de base de datos, ajuste de base de datos, migración de datos, etc. A veces me pregunto si es programador o administrador de sistemas.

Respuesta

2

Tener habilidades adicionales siempre ayuda.

Conocí desarrolladores muy fuertes que no podían conectar una impresora en Windows. Lo cual es algo gracioso.

Si planea hacer una programación en red: desarrolle el hábito de usar ethereal/wireshark y mire los paquetes. Eventualmente valdrá la pena.

2

Sepa lo suficiente que pueda resolver problemas y hacer cosas en su trabajo de Ingeniería de software. No sabe tanto que la gente lo confunde con un administrador de sistema y comienza a llamarlo para realizar tareas rutinarias de mantenimiento del sistema. Algunas sugerencias sobre lo que debe saber:

  • Cómo iniciar sesión en el sistema de despliegue
  • logs de acceso
  • Instalar/reiniciar la aplicación en el sistema de despliegue
  • Comprender la topología de despliegue de producción y poder para instalar una aproximación en su máquina o máquinas de desarrollo
  • Instale e implemente su base de datos y otros servicios de infraestructura (como JMS), así como la supervisión y solución de problemas básicos

Obviamente estoy tomando un punto de vista de la aplicación web aquí. ¿Tal vez otros pueden hacer sugerencias más generales?

+0

No hay nada malo en 'saber tanto' siempre que sea lo suficientemente bueno en su trabajo de ingeniería o programación para desalentar una distracción con las actividades de mantenimiento de rutina. – nik

+0

Sí, buen punto. –

5

Es fundamental para un programador tener una vista de Big Picture de todos los aspectos del desarrollo de software, la implementación, el entorno de tiempo de ejecución, la seguridad y la protección.

De lo contrario, se pueden hacer "errores inocentes" que tienen resultados muy costosos, y el efecto neto es uno de productividad disminuida (o peor).

sabe lo suficiente sobre cómo funcionan las cosas para satisfacer el panorama para su entorno, pero que no necesitan saber cómo hacer que funcionen.

2

¡Depende del campo en el que se encuentre! Cuando trabajé (hasta hace poco) desarrollando software de administración de clústeres, obviamente los administradores de sistemas y especialistas de redes estaban entre mis principales "audiencias", y conocer y aprender más acerca de sus tareas era absolutamente crucial para mi desempeño laboral; ahora que trabajo desarrollando software de Business Intelligence, toda esa riqueza de los conocimientos de los sistemas (aunque lejos de ser inútil, por supuesto ;-) es de baja prioridad en comparación con la comprensión de los problemas que enfrentan los analistas de negocios, economistas, vendedores/finanzas/contables, y tomadores de decisiones de nivel estratégico.

Estos dos campos pueden ser un poco extremos (pero I hizo cambiar de uno a otro hace menos de un año! -) pero el principio es válido: no se puede dar una buena respuesta sin una comprensión de qué campos de aplicación estás en, o planeas mudarte en el futuro.

1

No recibo este tipo de preguntas. Es como "cuánto debe saber un programador sobre la vida". La respuesta siempre es "tanto como sea posible".

Primera pregunta: ¿Te gusta la administración del sistema y te gustaría saber más? Si te gusta eso, ¡aprende sobre eso!

Si la administración del sistema te hace vomitar, entonces no, aprende algo más. ¿Te imaginas? Eres muy bueno en sys admin pero no te gusta, lo escribes en tu currículum para que obtengas un trabajo en el que consigas esas responsabilidades.

Básicamente, aprende todo lo que puedas sobre cosas para las que tienes algún tipo de pasión.

1

Creo que cuanto menos sepa (o que la gente sepa que usted sabe) es mejor. Recuerdo en una compañía que la gente venía a nuestra habitación a buscar ayuda con problemas de computadora. Siempre fingí que no sabía cómo ayudarlos, pero uno de mis compañeros de trabajo siempre los ayuda, obtuvieron soporte gratuito de TI y creo que ese tipo estaba en una línea de trabajo incorrecta.

en lo que respecta al puro conocimiento de administrador que es una pregunta difícil, la mayoría de los administradores que conocí no saben cómo configurar o configurar servidores de aplicaciones, bases de datos, ldaps. entonces, para que funcionen con un buen rendimiento, debes darles instrucciones paso a paso sobre qué hacer. ese conocimiento es realmente útil.

+0

Sí, hace años tenía un trabajo en el que ayudaba a la secretaria del grupo con WordPerfect, enseñaba a otra persona a programar y era el tipo general de goto cuando alguien necesitaba ayuda, especialmente si no eran muy técnicos. ¿Qué hizo por mí? Fui criticado en mi revisión anual por no terminar lo suficiente, y cuando señalé que con frecuencia estaba ayudando a otros, me dijeron que ese no era mi trabajo. Conseguí un nuevo trabajo un par de meses después. – PTBNL

+0

¿Es la única persona que sabe cómo solucionar problemas con la blackberry del CEO una buena forma de garantizar la seguridad laboral? –

0

Realmente depende de en qué idioma programe. Hice un montón de c/C++ antes, no mucha administración allí.

Pero para la web, parece que la mitad de mi trabajo es aprender a ser un administrador de sistemas. Se pueden hacer muchas optimizaciones aquí con un poco de conocimiento sobre las configuraciones del sistema, las copias de seguridad del servidor y los cronjobs.

La configuración de nuestro servidor produjo más ganancia de rendimiento que la que pude optimizar en el código. ¿Pasar un día como administrador de sistemas para obtener una ganancia de rendimiento del 100% en todo el sitio o un día como programador para obtener el 100% de ganancia en un solo componente? cualquier programador elegiría ser un administrador de sistema para ese día.

Y existe la implementación automática de nuestro sitio, la configuración/migración de la base de datos. Esto podría ser así porque no tenemos un "administrador de sistemas real" (startups: ¡elija su propio título!), Pero no veo cómo puedo programar aplicaciones web buenas/rápidas/confiables sin el conocimiento del sistema. Detrás de eso.

Y debo decir que, con todo el conocimiento de sysadmin que adquirí recientemente, estoy empezando a ver nuevas posibilidades y soluciones como programador. Así que mi consejo es, aprende todo lo que puedas sobre el sistema que está detrás de él, pagará.

Cuestiones relacionadas