"finalmente me dijo que tienes 2 años en esta área y él (java guy) es 20 años programador profesional, así que él sabe mejor que tú".
<rant>
La primera vez que me encontré con una mierda así hace más de 30 años. Me molestó entonces y me molesta aún más ahora. Se llama Argument from Authority (AKA Proof by Authority ) y es pura, no adulterada bullsh * t. Todas las personas que he conocido y que han intentado reclamar esto por sí mismas han tenido un grave problema con la autoestima ... y a menudo sabían mucho menos sobre el tema de lo que pretendían saber.
Personalmente he conocido a varios programadores asustadizos que todavía estaban en la escuela secundaria y que solo habían estado codificando durante uno o dos años. Solo 2 ejemplos: el sistema de foros original fue escrito en 1973 por un joven de 15 años, y la primera implementación de mensajería instantánea multiusuario fue escrita en 1974 por un joven de 13 años que bebía leche mientras los otros ingenieros estaban teniendo una cerveza el viernes por la tarde.
También conozco algunos dinosaurios que no han adquirido una nueva tecnología en 10 o 15 años. Muchos de ellos admitirán no rastrear lo que está sucediendo en el tiempo presente, pero hay algunos que ven esto como una insignia de honor. No es.
</rant>
Una vez sacado eso de mi sistema, me gustaría ampliar un punto hecho en las respuestas de @Bobby Tables y @Developer Art: usar "secretos", escribir "código inteligente" o hacer cualquier cosa en el código que sea una "prueba "de cuán oscuro puedes hacer que algo esté mal . Período. Es el acto de una persona inmadura y absorta en sí misma que no tiene en mente los mejores intereses del proyecto / empresa. Están colocando minas terrestres de mantenimiento que explotarán en algún momento en el futuro, probablemente después de que se hayan mudado a otros empleadores víctimas .
Lo opuesto a "inteligente" es escribir un código claro y conciso que use bien el lenguaje de programación; usa estándares de nombres consistentes; comentarios apropiados de fin de línea; buenos comentarios en bloque para explicar las secciones principales; está documentado (con ejemplos cuando corresponda); y probado Eso es lo que ofrece un verdadero programador profesional .
Y cuando terminan, se dan la vuelta y son mentores de la próxima generación de programadores profesionales.