Las grandes empresas generalmente mantienen el código fuente de su sitio web en un Sistema de Control de Código Fuente como Git, Subversion o Mercurial. Estos sistemas a menudo están protegidos detrás de un firewall y son accesibles externamente solo a través de redes privadas virtuales administradas. Los sistemas permiten que muchos desarrolladores trabajen en el mismo código fuente desde diferentes computadoras, sin tener que preocuparse (mucho) sobre si tienen la copia más reciente o si están haciendo cambios conflictivos.
Los desarrolladores realizan cambios, los prueban en sus propias máquinas, luego los implementan para probar o organizar servidores, que difieren de los servidores de “producción” que ejecutan los sitios web en vivo que ven la mayoría de los usuarios. Una vez que el equipo se siente cómodo con los cambios, “empujan” el nuevo software a los servidores de producción mediante procesos de implementación automatizados.
A menudo, solo ciertos miembros del equipo de desarrollo u operaciones pueden empujar a los servidores activos. Esta es una medida de seguridad para evitar que un desarrollador coloque malware en el sitio en vivo o acceda a la información del cliente en el sitio en vivo, y a menudo es un requisito legal de “separación de preocupaciones”.
- ¿Qué significa esto para un ingeniero de software: "No estás en un nivel superior"?
- ¿Cuánto tiempo pasan los ingenieros de software tomando los requisitos del cliente?
- ¿Cuáles son los ejemplos estándar de la vida real de conceptos orientados a objetos?
- ¿Qué tiene que hacer un ingeniero de software en su trabajo?
- ¿Cómo debo prepararme para una entrevista telefónica de prácticas de Amazon SDE?