Estoy buscando un nuevo puesto en una nueva empresa. He hablado con algunas personas en el pasado (en general, no en esta compañía) que se les había dado un presupuesto anual para comprar nuevas cosas de computadora para mantenerse al día.
Ahora, por qué siento que vale la pena hacer esta pregunta es que Joel sale y dice que un empleador debe pagar por el mejor equipo que el dinero puede comprar ... dentro de lo razonable, por supuesto.
De la prueba de Joel: 12 pasos para mejorar el código
9. ¿Utiliza las mejores herramientas que el dinero puede comprar?
Escribir código en un lenguaje compilado es una de las últimas cosas que aún no se puede hacer instantáneamente en una computadora hogareña de jardín ...
Los equipos de desarrollo de primer nivel no torturan a sus programadores. Incluso las frustraciones menores causadas por el uso de herramientas de poca potencia se suman, lo que hace que los programadores estén gruñones e infelices. Y un programador gruñón es un programador improductivo ...
¿Alguien sabe si la industria tiene un estándar para ofrecer una asignación o presupuesto?
Nunca he trabajado para una empresa como esta, pero creo que debería lanzar esto al ring para las negociaciones. Parece razonable. ¿Cómo manejan esto las compañías más grandes como MS, Google y Apple? Si dice que sí, dé un rango ... Me han dicho números desde $ 5k hasta $ 10k. Me parece alto, pero bueno, con gusto lo tomaría.
fuente
Respuestas:
Personalmente, me gustaría que la compañía clasifique el equipo que necesito, no me dé un presupuesto y me obligue a ocuparme de toda la investigación, negociación y otros problemas que conlleva la compra e instalación de hardware corporativo.
Al final, todo lo que quiero hacer sobre el hardware es establecer mis pocos requisitos y que alguien más haga todo ese trabajo, para que pueda seguir con los míos.
Más importante y apropiado (en mi humilde opinión) es un presupuesto de capacitación personal, con el que puede comprar libros y asistir a cursos y conferencias.
fuente
Definitivamente es bueno tenerlo y algo que mencionaría para discutir o incluso como parte de sus fichas de negociación para la negociación salarial. La pregunta es más sobre si es un "debería" o un "must" .
Desafortunadamente, la industria definitivamente no lo tiene como una práctica estándar, pero afortunadamente algunas compañías son un poco menos codiciosas y están más en contacto con las necesidades de sus desarrolladores (y empleados en general).
Esta será una respuesta bastante amplia, y por presupuesto no hago una distinción entre un presupuesto que se le ha asignado para comprar o realizar un pedido, o como algo transparente cuando solicita una actualización administrada por el personal de su empresa . En sus libros, de todos modos es lo mismo.
Es práctico
El problema es que esto obviamente puede representar rápidamente un gran presupuesto para una empresa, si alcanza una cierta masa crítica. Sin embargo, estoy de acuerdo contigo y con Joel en que puede valer la pena.
No tiene absolutamente ningún sentido frustrar a los empleados.
No te eches a perder
Dicho esto, también debe mantener a los empleados en línea y hacer que se den cuenta de que a veces el mal rendimiento o el hardware ligeramente desactualizado es solo una realidad . No querrás que todos se conviertan en niños mimados que quieran un nuevo SSD, el último procesador iN, el GB extra de ram, etc.
No quiero que las personas se obsesionen con la eterna juventud, y eso también se aplica al hardware.
(Sin embargo, con los proyectos de software, tiendo a presionar para mantenerme lo más cerca posible de la última versión ... Las analogías no siempre son válidas :))
Necesidades específicas para hardware específico
Creo que hay que hacer una distinción entre:
Paquete base
Por ejemplo, las siguientes son cosas bastante estándar que tendría derecho a esperar, y para las cuales no veo una necesidad (fuerte) de pedidos especiales:
Estos pueden ser los mismos para toda la empresa, excepto para casos especiales como empleados con discapacidades. Los empleados con discapacidades o lesiones obviamente deben ser acomodados.
Bonos
Entonces, si obviamente necesita hacer muchas videoconferencias y presentaciones, es posible que desee algunos dispositivos como bluetooth, tabletas y stylus. Lo que en realidad se puede compartir entre los departamentos mediante el uso de un sistema de reservas, para no terminar con todo el mundo solicitando algunos (y perdiéndolos), mientras se reduce el espacio para quejarse.
Si eres un diseñador, necesitarás tu tableta de dibujo, tu trackball, etc. Lo hago de vez en cuando para ver al desarrollador que pide un trackball en lugar de un mouse. Personalmente, probé ambos, y veo que ambos son casi igualmente idénticos, por lo que nunca he aceptado esta afirmación, si no tiene una necesidad específica que no sea "Me gusta más". Puede vivir con un mouse en lugar de una bola de seguimiento sin desarrollar un RSI en 8 horas si aún no tiene problemas y tiene los hábitos de uso correctos. Es un problema diferente cuando obtienes un mouse, una bola de seguimiento o un teclado mal, pero no veo una victoria clara para uno u otro.
Si es un desarrollador que necesita ejecutar 4 servidores de aplicaciones simultáneamente, crear proyectos y mantener abiertas 3 instancias de Eclipse o Visual Studio en todo momento, obviamente necesitará una estación de trabajo bastante competitiva. Consideraría estas "necesidades básicas" para los desarrolladores , por lo que no significa que los tipos de marketing necesariamente tengan que estar alineados con eso.
Desarrolle su caso: datos duros para la victoria
Por experiencia, la mayoría de las empresas comprenden sus necesidades si puede demostrar que son legítimas. Si puedes defender la justificación de ello, te darán el dinero o intentarán acomodarte. Te están pagando para que trabajes , así que realmente no quieren que pierdas el tiempo.
(Es decir, si les importa un poco tu trabajo ... si eres irrelevante, me temo que no tienes suerte allí ...)
Muestra la ganancia para ti
Entonces, en el pasado, mis compañeros de trabajo y yo obtuvimos actualizaciones para RAM, dispositivos de entrada, sillas, discos duros y estaciones de trabajo completas o incluso granjas de servidores basadas en requisitos claramente recopilados y detallados. Se necesita un poco de tiempo para construir su caso, así que discútalo primero con su gerente de línea, pero probablemente estará bien. O pase las horas adicionales una semana en la oficina para construir el caso, puede valer la pena y su gerente de línea le confiará más con tales decisiones en el futuro.
Muestre la ganancia para ellos (el dinero es la raíz de todo mal ...)
Con respecto al ejemplo anterior, calculamos, por ejemplo, los tiempos de construcción y la reducción que pudimos obtener, e hicimos comparaciones entre las diferentes configuraciones presentes en la empresa, calculando el promedio del tiempo perdido por desarrollador por día y luego haciéndolos darse cuenta que fue equivalente durante un año a aproximadamente 20 días completos por persona de no poder hacer nada (ya que la computadora básicamente no respondería si no tuviera al menos un quad-core y 8GB de RAM para esta compilación). Veces la cantidad de desarrolladores, esa es una cantidad considerable de horas que le pagan a la gente para quedarse sin hacer nada, lo que fue mucho más alto que actualizar al menos algunas de las estaciones.
Más recientemente, un compañero de trabajo ha estado haciendo una evaluación similar para convencerlos de que consideren las unidades SSD, y está en el proceso de recopilar datos muy detallados sobre cuánto tiempo se ahorraría para cada cuerpo, de manera similar.
Para consultas relacionadas con la salud, una simple recomendación de su médico, incluso informal, podría ser suficiente.
Para el software personalizado, es posible que solo necesite presentar las ventajas de la herramienta y sus impactos cuando se integre en su proceso. Por ejemplo, logré que mis últimas 3 compañías compraran licencias para herramientas de enmarcado después de usar una versión demo para una presentación para captar su interés, y luego usarlas más ampliamente en uno o dos proyectos de corta duración que involucran a algunas personas. Estos eran bastante baratos, pero originalmente no querían comprar las licencias sin ver la necesidad. Cuando se dieron cuenta de que claramente ayudaba a visualizar prototipos y tomar decisiones informadas antes, dieron luz verde rápidamente.
Plan
Una nota rápida sobre grandes actualizaciones para todo un equipo
Sugiera lanzamientos continuos si solicita actualizaciones para todo un equipo:
Admitir derrota: no siempre funciona para todo ...
Y con razón. No todo es aceptable. Y las cosas que son aceptables pueden estar fuera del alcance de su empresa. Desarrolle su caso, llévelo al gerente de línea, discuta sobre un almuerzo en equipo o algo más amigable y en equipo que en el calor de la revisión financiera de este año.
Además, si tiene dificultades para construir su caso :
Si no puede construir un caso y comenzar a estar a la defensiva sobre su solicitud, significa que será mejor que haga otra cosa.
fuente
Una asignación anual de equipo individual es un camino peligroso a seguir:
¿Qué pasa con los equipos comunes? servidores, enrutadores, administradores de sistemas, software con licencia / corporativo ... Si yo fuera el jefe, vendería estos servicios como una parte adicional de la asignación.
¿Qué hay de ir más allá? subsidio telefónico, escritorio, oficina, cafetera, energía eléctrica, aire acondicionado ...
fuente
Los salarios anuales de los ingenieros son altos, por lo tanto, invertir en equipos es bueno. 5-10k $ no es nada, si se va a usar bien.
Para citar al autor de la biblioteca boost MSM :
Sin embargo, si el equipo actual sigue siendo bueno, no veo ningún punto en desperdiciar dinero.
fuente
Supongo que depende del entorno en el que esté trabajando. Tome Delphi, por ejemplo, tiempos de compilación increíblemente rápidos para que la velocidad de la computadora sea menos importante. Pantalla inmobiliaria hace.
Además, aunque dar nuevas herramientas es bueno, no subestimes el tiempo perdido al configurar una nueva computadora, configurando tus ajustes como antes. Las cosas simplemente no funcionan.
fuente
Digamos que está trabajando en un proyecto que hace una docena de compilaciones o compilaciones de prueba al día, y cada una toma diez minutos.
Si tuviera una máquina mejor, tal vez solo le tomarían ocho minutos. O cinco minutos. Y su máquina aún puede ser lo suficientemente ágil como para hacer otras cosas para que pueda seguir trabajando mientras se está construyendo.
Calcule cuánto tiempo ahorraría todos los días, sume todo el año. Conviértalo a un valor en dólares utilizando su tarifa por hora.
Sorprendido todavía?
fuente
Creo que hay pros y contras (como de costumbre). Tener presupuestos de equipos individuales puede significar una amplia variedad de hardware, bueno para la depuración, malo para el mantenimiento.
¿Los individuos también rastrean las garantías en el equipo? Tiempo perdido si lo hacen, problema administrativo si no lo hacen.
Puede depender de su situación. Una empresa pequeña / mediana que vende software en el mercado general, entonces un presupuesto individual puede ser algo bueno (bueno para la depuración). Una gran corporación trabajando en software interno, entonces los presupuestos individuales pueden ser algo malo (todos tienen el mismo hardware).
También existe el argumento de que los desarrolladores deberían tener que probar en máquinas que son aproximadamente promedio, para que obtengan el mismo rendimiento que el usuario objetivo.
fuente
Creo que un presupuesto anual es una pérdida de dinero: el equipo no se vuelve obsoleto tan rápido. Creo que es mejor actualizar cuando el rendimiento avanza hacia donde vale la pena hacer el cambio, por ejemplo, cuando los procesadores de doble núcleo se reemplazaron por cuatro o seis núcleos, cuando Windows 7 reemplazó a Windows Vista y XP, cuando el terabyte fue duro las unidades reemplazaron las unidades de 200 o 300 MB, y cuando salieron las unidades SSD. Todas estas fueron mejoras significativas.
Pero después de obtener el mejor y más reciente escritorio con algunas o todas las características mencionadas anteriormente, no tiene sentido gastar otros $ 5K al año siguiente para una mejora incremental.
Además, creo que todos los desarrolladores de un grupo deben actualizarse juntos y también obtener el mismo equipo, ya que el soporte será más fácil de esa manera.
fuente
Un presupuesto anual sería bueno, pero puedo ver algunos desperdicios si tiene que "usarlos o perderlos". Por ejemplo, algunos años puede que necesite aprovisionar y gastar más de lo que le asignan, pero otros años puede que no necesite gastar mucho. Por lo tanto, permitir que el presupuesto se transfiera al próximo año sería esencial para la política.
Otra opción sería combinar el presupuesto de hardware con la capacitación, para que pueda optar por poner una parte de la misma en capacitación y una parte en el hardware. Por supuesto, un buen empleador lo colocaría en cursos de capacitación todos los años de todos modos, pero en mi experiencia esto rara vez sucede.
fuente
Nunca me he encontrado con tal presupuesto. En los contratos a largo plazo, las corporaciones proporcionan el material informático y les importa si algo se rompe. Es más racional que darles dinero a los empleados y esperar que compren por ellos lo que quieran. ¿Qué pasa cuando la computadora portátil de alguien se descompone? Se desperdician unos días antes de que lo repare o compre piezas nuevas, etc. Cuando la empresa gestione el hardware, recibirá un reemplazo para el portátil roto en unas pocas horas.
Otro caso son los contratistas / autónomos, que son contratados a corto plazo, y administran sus cosas ellos mismos. Ellos se encargan de las reparaciones ellos mismos y simplemente esperan que el pago sea lo suficientemente bueno como para que les sea rentable.
fuente
Cuando la empresa para la que trabajo comenzó, teníamos una asignación de hardware personal de $ 1500. Los empleados pueden comprar equipo para trabajar en casa y gastarlo. A medida que la compañía fue comprada y vendida, hemos perdido este agradable beneficio. Nuestro departamento de TI actual proporcionará a los desarrolladores equipos de primera línea, pero es de uno de los grandes proveedores (HP, Dell, Lenovo, etc.).
fuente
Una actualización anual no es necesaria. Depende del rendimiento del sistema Vs de las herramientas.
Prefiero que el sistema del desarrollador se actualice ya que necesitan un sistema más potente para ejecutar todas las herramientas de desarrollo.
Básicamente es bueno para la organización, ya que reduce el tiempo de desarrollo.
Además, cada organización debería considerar el uso de un servidor centralizado como un sistema que se puede usar para instalar software que se puede usar con fines de prueba y reducir la utilización de recursos en el sistema del desarrollador.
fuente
Los desarrolladores deben obtener un presupuesto anual de capacitación + equipo, pero cuando las cosas van realmente bien, se deben poner a disposición clases / conferencias / capacitación / equipos / libros / camisetas / comidas adicionales.
Por lo general, vale más para el desarrollador que el efectivo.
fuente