Antes que nada: para maximizar sus ganancias, comprenda (al menos) el rango de salarios que paga habitualmente por su experiencia / educación en su área geográfica. Si no sabe cuánto puede esperar razonablemente que le paguen, es susceptible a que un operador de baja oferta lo convenza de aceptar menos de lo que puede obtener en otro lugar.
***
Las acciones de un programador en el comercio se triplican.
- ¿Por qué hay un incremento en el salario de un político indio cuando el verdadero trabajo es de un soldado?
- ¿Cuánto costaba el salario de Alfred como mayordomo en la mansión Wayne?
- ¿Sería suficiente un ingreso mensual de $ 1200 (antes de impuestos) para vivir en San Diego, según su experiencia?
- ¿Hay alguna manera de averiguar cuánto le pagan a un actor / actriz en una película? ¿La información es pública?
- ¿Cuánto recibe mensualmente un oficial de IPS?
- Creatividad esencial, una reputación para resolver problemas difíciles.
Hay un montón de componentes para la creatividad en la codificación: - Habiendo estudiado un montón de código de otras personas, para ver y comprender (y adaptar para su propio uso en el trabajo) muchas formas diferentes de resolver problemas
- Capacitación en metodologías y herramientas de resolución de problemas para dividir problemas grandes en múltiples más pequeños, como:
- Lógica formal
- Diseño algorítmico (un curso universitario en informática)
- Diversas técnicas matemáticas para resolver problemas cuantitativos.
- La capacidad de mantener múltiples hechos / operaciones en la cabeza de una vez y trabajar con ellos. Puede vivir sin un alto grado de esto, pero contribuye enormemente a la velocidad en el diseño de soluciones.
- Conocimiento del negocio en el que trabaja, para comprender mejor las necesidades del cliente (gerente del proyecto).
Los programadores sin experiencia en la industria financiera y la contabilidad rara vez son contratados con experiencia en esa industria. Lo mismo es cierto para (al menos) la banca, varios tipos diferentes de fabricación, seguros de salud y comercio de valores. El middleware, la administración de bases de datos y la administración de Unix / Linux / Windows son generalmente transferibles entre industrias, pero la codificación de aplicaciones y el diseño de interfaz no lo son.
- Conocimiento profundo del código, utilidades y otras herramientas y plataforma operativa en la que se ejecutará el código.
- Aquí es donde la mayoría de los programadores pasan la mayor parte de su tiempo, pero debe equilibrarse con los otros dos, o el trabajo del programador será mucho más difícil y su productividad aparente será mucho menor. No puede omitirlo, y no puede confiar en esto solo para obtener los mejores ingresos.
Otros conocimientos comerciales (Agile, DevOps, Six Sigma y otros candidatos de palabras de moda) pueden y deben aprenderse en el proceso de creación del producto. Si le va bien en los primeros tres, generalmente maximizará su salario en la especialidad elegida.