Archivo de marzo de 2008

¿Cuanto cobra un programador?

Jueves, 27 de marzo de 2008

Siempre me cuenta el mismo rollo, los informaticos estais forrados, los mejores sueltos1, esta leyenda, salio durante “el efecto euro y año 2000”, pues estos son los datos que he obtenido de las ofertas publicadas en tecnotrabajo.com2.

bruto/anual

Desviación

C#

24,957

1411

Java

24,128

581

C++

23,959

412

Visual Basic

23,140

-407

Delphi

22,650

-897

php

21,866

-1681

El sueldo medio es de 23,553 bruto/año, de esto los mejor valorados son los programadores en C#, y los peor quien programa en PHP.

Madrid

barcelona

Resto

C#

25,984

25,455

23,077

Java

25,399

24,792

20,242

C++

25,006

23,793

22,430

Visual Basic

24,057

24,000

18,353

php

23,444

23,388

21,866

Delphi

23,368

22,000

22,875

Si ajustamos un poco mas los peor pagados son los programadores de visual basic, de fuera de madrid y barcelona, y los mejor pagados los programadores de C# en Madrid.

Alcanzando las mas altas cotas de la mediocridad

Jueves, 27 de marzo de 2008

En toda empresa que se precie lo primero que te enseñaran sera todas las certificaciones, de calidad que dispone, tambien es muy corriente ver esas frases de motivacion, como:

“La calidad nunca es un accidente; siempre es el resultado de un esfuerzo de la inteligencia. “

John Ruskin

… y luego van bajando el liston hasta: “La calidad nuestra razon de ser”, y patrañas por el estilo, parace que sale mas rentable el invertir en un sello de calidad que realmente el tenerla. Pero a poco que te hayas movido por empresas del sector, la impresion no suele ser buena, es raro encontrar empresas que cumplan los requisitos minimos para desarrollar un proyecto mas o menos sostenible, con sostenible quiero decir que cumpla como minimo la mejora continua, que tanto grita los protocolos de calidad ISO.

Por mi experiencia la figura principal de cualquier proyecto recae en el jefe del proyecto y el programdor senior, El jefe de proyecto viene a hacer las funciones de interlocutor, entre el cliente y el equipo de desarrollo, o mejor el equipo de I+D+I, un jefe de proyecto, no tiene necesariamente que conocer la tecnologia que se va a aplicar seria el equivalente a pensar que un aparejador debe saber de soldar una cañeria, ademas de la toma de requerimientos, y desarrolla un planning que viene a incluir el clasico diagrama de Gant y calculos estimativos como PERT, ademas de esto suele generarse un libro con las temas de los requerimientos, detalles de la aplicación, etc. esto permite el tener una estimacion del tiempo que se va a emplear, tiempo de entregra, formacion, etc. A parte de esto el jefe de proyecto puede deficir cual sera la mejor metodologia,

Otra figura importante viene a ser el programador senior, este tiene profundos conocimientos no solomante del lenguaje, sino de la plataforma asi como de los recursos que pueda requierir el proyecto, dependiendo de lo amplio que sea el proyecto es posible que exista mas de un programador senior, ademas del lenguaje tendra conocimientos avanzados sobre la plataforma que se implementara, este tipo de figuras suelen estar muy involucrados en la tecnologia que utilizan.

El programador senior esta implicado en el diseño del interface, informes, etc e implemntan las partes mas bajas del sistemas, drivers, dll, conexiones, etc., ademas dirige a los programadores junior que tiene a su cargo.

La siguiente figura, viene a ser el programdor juior este, tiene conocimientos avanzados sobre el lengua, similar al senior, pero sus tareas estas mas orientadas al trabajo en equipo, el codigo debe serguir la forma establecida por el libro de estilo, correctamente documentado, y revisado. Erroneamente se entiende que un programador junior es un ayudante o un aprendiz, esto es totalmente falso, yo no dejaria jamas implementar codigo a un aprendiz, la calidad del codigo es tan importante como el proyecto en si, de hecho la viabilidad de todo lo documentado y programdo esta en que el codigo se ejecute correctamente, y no solamente eso sino que este desarrollado de una forma limpia y siguiendo los protocolos establecidos por el equipo.

Hasta aquí lo que deberia de ser, pero la realidad es miu distinta; generalmente el jefe de proyecto viene a ser el propio dueño, o el mas veterano, o el mas pelota del equipo, que viene a confirmar el principio de peter, con unos escasos conocimiento el siguiente paso es contratar a alguien que haga lo que se ha prometido al cliente, como norma, el beneficio esta entre el precio de venta y el coste, asi que si si contratas lo mas barato que puedas obtendras un gran beneficio.

“Ningun proyecto es una tonteria”

Asi que con esta premisa, la busqueda se centra en el programador mas barato, por el precio de un programador senior consigo dos junior, Bien esto da la siguiente norman

“En programacion muchos malos no hacen uno bueno”

Los programadores noveles, que no los junior, vienen a hacer software explosivo, generalmente desarrollan muy rapido, para tarde o temprano perdese en su propio código, el código ha crecido de una forma descontrolada y si el proyecto probablemente quede inacabado, y en el mejor de los casos sin posibilidades de continuación. Esto se suele percibir en cuanto el proyecto no avanza o una modificacion hace saltar errores que ya estaban “teoricamente corregidos”, en este punto lo mas habitual, suele ser incorporar mas personal, como si de hacer churros se tratase, el resultado suele ser un empeoramiento del problema.

Si eres un buen comercial es posible que llegados a este punto, salves el problema, comiendo con el jefazo de turno, y vendiendo la moto al cliente final.

Otra impresion generalizado suele ser el “super-lenguaje”, los “jefes de proyecto”, ven en otros proyecto que se desarrollan correctamente y se fijan en el lenguaje, esto hace que la demanda de programadores “baile” dependiendo de modas, realmente en los lenguajes que conozco no sabria decir cual es mejor que cual, el cambiar todo un desarrollo por ejemplo de delphi a java, asi por el mero hecho de que java es lo mas “in” me pareceria una perdida de tiempo y probablemente de dinero. Asi si entre los nuevos requisitos estan explorar el mercado Linux, y Mac quizas si mereciese la penam en mi proyecto no seria muy costoso, por que el codigo suficientemente documentado.

Las demandas de lenguajes en la actualidad son las siguientes; esto lo extraje de tecnoempleo.com, un portal especializado en la busqueda de empleo relacionado con la informatica.

tecnoempleo.com

Java

2164

php

777

C++

749

Visual Basic

672

C#

550

Delphi

110

De toda la oferta solamente el 1,5% de esta oferta esta dirigida a profesionales con experiencia, en numeros mas claros por cada 98 programadores sin experiencia entran 2 sin experiencia. Ironicamente las empresas en lugar de comprar experiencia prefieren titulaciones. Algo totalmente absurdo al menos para llevar a cabo un proyecto.

trabotecnico.com

Java

39

C++

14

php

9

C#

8

Visual Basic

5

Delphi

2

Haciendo una busqueda un poco mas avanzada, el resultado mas pintoresco viene de Visual Basic, de todas las ofertas las que menos experiencia solicitan son las de Visual Basic, por otro lado este lenguaje sule ser el usado por los principiantes

Madrid

barcelona

Resto

Java

29/1286

6/348

5/533

Visual Basic

2/421

1/114

2/136

Delphi

0/43

1/19

1/48

C++

8/392

0/98

6/259

C#

2/289

1/78

5/184

php

5/328

2/207

2/243

La calidad tambien afecta a las provincias, la peor calidad es la encontrada en las provincias, de hecho muchos anuncios ni siquiera saben lo que quieren, por ejemplo es normal el ver “Se necesita programador .NET”, en .NET no es un lenguaje es un framework, la plataforma .net, y ahi esta la importancia, puede programarse en cualquier lenguaje, mas o menos, desde basic hasta c++, pasando por cobol, lisp, fortran , lo que sea que genere codigo objeto .net. Y no solo eso sino que ademas puede desarrollarse con herramientas borland. Microsoft, o cualquier otra, y no solo eso sino que ademas puede hacerse para windows, linux. El caso es que cada plataforma es un mundo, y cada lenguaje otro, asi que realmente lo que piden piden es “programador barato”. Esto tambien suele pasar con java, en la mayoria de los casos lo que se requiere en j2ee, con conexión a bases de datos, pero a alguien le sono java.
Como final dejare aquí el video de Vicente Alciturri, genrente de Ascentic, la mayor asociacion de empresas de tecnologia de cantabria.

http://www.ascentic.org/actualidad/noticias/ver/?id=404

Mi primer ordenador

Domingo, 16 de marzo de 2008

Recuerdo el año 82′s, yo estaba en sexto de EGB, y en todo el cole, comenzó una ola de pasión por los ordenadores, no teníamos muy claro para que podría servir un cacharro como ese, de hecho recuerdo que pregunté a uno de los “listos” de la clase, oye yo también voy a pedir un ordenador por reyes pero… ¿para que sirve eso?, tío… puedes hacer tus propios juegos, eso sonaba mejor que la consola que se había comprado mi primo, un atari 5200. Esto pintaba mucho mejor me podría hacer mis propios juegos, creo que en aquel momento pensaba en juegos que aun no se han desarrollado.

Me juré a mi mismo que daría la “turra” hasta que tuviese mi ordenador, mi padres me miraban con cara extraña, en aquella época los padres no se crecían porque el hijo estudiase informática, en aquellos años el ordenador se quería como una super-maquina de juegos, que si exceptuamos Internet, es mas o menos es para lo que se quiere ahora.

Así que di la paliza todo lo que pude, tenia que ser en esas navidades, mi padre después de aguantar esa “turra”, cogió el catalogo, le ojeo y cuando llego al precio, vi claramente en su cara que el tema se había puesto muy difícil, todavía lo recuerdo 42.000 pelas, y eso que era una oferta.

El camino se había tornado mucho mas duro de lo que parecía inicialmente, así que totalmente desalentado, dormía con mi catalogo de Sinclair, soñado que quizás los reyes existían de verdad, esta era la única forma de que yo tuviese mi ordenador.

Creo que tenia tan claro que no iba a tener Spectrum que comencé mi primera depresión, no se porque no volví a dar la “turra”, de las ultimas semanas, los reyes se aceraban, y me preguntaban que quería, nada… iff, iff, así que una mañana se acerco mi abuelo, me cogió de la mano, y me dijo ven vamos a dar una vuelta, fuimos a la tienda mas puntera en electrónica, y me dijo, anda dime cual quieres, delante de mi había el Comodore 64, el Vic-20, el ZX-81 y el ZX-Spectrum.

El Comodore se salia de precio, el zx-81 era demasiado viejo, y el Vic-20 y ZX-Spectrum eran similares, pero el Vic.20 no se oía mucho dentro del cole, así que mire los precios y le dije a mi abuelo, este esta bien, señalando al ZX-81, al tiempo que miraba el Spectrum, mi abuelo me repitió te he dicho que me digas cual quieres, no cual es mas barato. Yo grite, este, señalando el Spetrum, miró al vendedor, y saco de debajo de la mesa una caja negra, con unas enormes letras blancas, Sinclair ZX-Spectrum, no daba crédito vivía en un sueño, mi ordenador, llevaba la caja agarrada al pecho, cual quinceañera con la carpeta repleta de fotos de sus “amores”, cuando llegue a casa todos me esperaban para verme la cara y como desempaqueta aquella maravilla de la tecnología.

Le coloque en la mesa y comencé a abrir la caja como si de desactivar una bomba se tratase, al levantar la tapa de corcho blanco, apareció con sus teclas de goma multicolor… bueno y ahora que?, pensé. Lo reconozco quizás fue la única vez que lei un manual, aquello se empezaba a complicar, y entre lo primero que leí es, después de conectar su ordenador al televisor aparecerá este mensaje… vaya así que es necesario una tele, a riesgo de que me echasen de la familia, me acerqué a mi madre, y le dije, verás es que el cacharro ese, esta muy bien, pero se necesita una tele… ¿que?, que después de gastarnos ese dineral ahora quieres una tele… pero puede valer la del trastero, conteste antes del siguiente grito, sí esa del año la polca, mira haz lo que te de la gana pero no nos vamos a gastar mas dinero en ese capricho, que todavía no se porque lo hemos comprado. Total que cogí la vieja tele de válvulas de la familia, la instale en el cuarto, y luego vi que se necesitaba un accesorio extra, el adaptador de antena, aquellas teles, había que convertir el moderno conector de la antena, a una conector de “banana”, yo no podía ni pensar si quiera en volver donde mi madre a pedirle que me comprase nada, creo que debía estarme callado en los próximos 90 años, así que cogí todos mis ahorros y baje a comprar un adaptador, por suerte no eran muy caros, de hecho el vendedor estaba encantado que existiesen idiotas que querían comprarle esos conectores obsoletos, así que con mi conector en mano finalmente encendí la tele, luego el Spectrum, largos minutos aquellos de encendido y buscando el maldito canal, para que?, pues para ver finalmente © 1982 Sinclair Research… vaya solo eso… pues vaya chufa, donde estaban esas maravillas de juegos, ese mundo alucinante donde me iba a sumergir en agotadoras aventuras, mire en la caja y encontré una cinta con lo que prometía ser la entrada a un mundo de juegos y diversión, y un enorme libro con un titulo como “aprenda Basic”. El libro me parecía hasta de mal gusto, una maquina para jugar que te tenias que aprender aquello… pues si bastante tenia con el cole,

y bueno la cinta…si estaba bien, quizás esto seria la llave al nuevo mundo, pero… , una cinta, puff…, no me veía con fuerzas de decirle a mis padres que ahora necesitaba un casete, así que cogí mi bici y me baje al parque…

Definitivamente…. la informática no era para mi.