Sobre programación después de 2 años de experiencia / Sudo Null IT News

Mi nombre es Nikita, soy desarrolladora backend de Python de Surf. Hace un mes completé mi primer proyecto en una empresa de subcontratación. Francamente, fue un descubrimiento para mí; antes sólo trabajaba en productos internos. Estas son dos experiencias completamente diferentes con diferentes actitudes hacia el producto, el código y el trabajo, lo que influyó en mi actitud general hacia la programación. Y hoy quiero compartir estos cambios a lo largo de 2 años de experiencia comercial. Muchas de estas cosas pueden parecer obvias, pero sólo me di cuenta con el tiempo (sí, dos años ya es mucho tiempo para los jóvenes).

Comenzar

Comencé a aprender backend en cursos conocidos de Django. Antes de eso, mi experiencia en programación se basaba en Pascal en la escuela, una calculadora en C++ con stackoverflow para cursos sobre seguridad de la información (no entiendo realmente por qué fue así) y Python con PowerShell para scripts de seguridad de la información.

Para entender qué idioma elegir, miré todo Youtube y leí todos los artículos sobre este tema. Me decidí por Python; siempre me gustó por su sintaxis. Y también por la entrada relativamente sencilla ya sabes dónde (sí, me enamoré un poco, pero sólo un poco, la verdad).

PHP, bueno, ¿cómo puedo decirlo? C++ parecía complicado y no quería aprender los trabajos de Ada Lovelace. La sintaxis en Go no me convenía; recuerdo que luego decidí dejarlo para más adelante. No consideré C#, después de haber leído sobre su popularidad relativamente baja, su fuerte conexión con el ecosistema de Microsoft y la debilidad del código abierto. No puedo hablar de Java: nuestro líder técnico es javaísta y kotlinista. Y Rust me asustó, porque en las afueras ya la gente gritaba que era sólo para megacerebros. Pero realmente parecía chino en comparación con otros idiomas “europeos”.

Desde entonces, durante casi toda mi formación me ha perseguido la idea de que estoy subprogramando, porque Python es “simple”, “lento”, “no para gente seria”, etc.

Mis ideas

1) Las empresas se preocupan por el dinero, por eso Python es su elección

No todos los negocios son exchanges o nubes que requieren 10^10 operaciones por segundo, o proyectos con arquitectura EDA con 1 millón de líneas de código.

¿Y por qué necesita pagarle a un programador ensamblador si puede contratar a un especialista en Python que puede hacer todo mucho más rápido (por cierto, incluso los proyectos ocupados a veces son más fáciles de cubrir con un aumento de capacidad)?

Muchos cuellos de botella pueden mitigarse con otros lenguajes (Go), bibliotecas C (numpy) o soluciones de terceros (el mismo almacenamiento en caché de Redis). Y Python en sí no es tan lento como parece. Además, se está desarrollando de forma increíblemente activa. Como ejemplo, su El intérprete se acelera con cosas inteligentes.están desarrollando prometedores subintérpretes.

Entonces, ¿cuáles son los beneficios de Python para las empresas?

  • Velocidad de desarrollo debido a la naturaleza de alto nivel del lenguaje.

    ¿Por qué preocuparse por utilizar 100 MB adicionales de RAM? Sí, esto es un desperdicio, pero nadie le pagará a un S-schnik para que piense en cómo limpiar su memoria para salvar la naturaleza.

    El código para transferir tarjetas Jason en Python se puede escribir mucho más rápido que en otros lenguajes. Y con soluciones en otros lenguajes (orjson, pydantic, etc.) no se queda atrás en cuanto a velocidad.

  • Velocidad de desarrollo debido a un Django de alto nivel aún mayor.

    Todo ya ha sido escrito para Django. Simplemente busque y presente su solicitud. Puedes poner los ojos en blanco al menos un poco cuando veas a un Pythonista mencionar a Django, pero ¿quiénes somos sin frameworks? Muchos desarrolladores probablemente ni siquiera sepan cómo funcionan las redes, y mucho menos los paquetes y pequeñas cosas similares. ¿Por qué exactamente deberías saber esto? A medida que aumenta la abstracción, los detalles pierden importancia.

    Por separado, me gustaría mencionar el maravilloso panel de administración, que resuelve el 90% de los problemas comerciales sin requerir casi ninguna inversión de tiempo.

  • Velocidad de desarrollo debido a la enorme comunidad.

    Casi todo ya está escrito para ti. ¿Necesitas TOTR? Leí la documentación, la conecté y pasé un par de horas. ¿Necesita integración? La mayoría de los servicios ya tienen implementaciones; nuevamente, solo necesitas un par de horas. Sí, muchos empezarán a decir que esto ya no es programación, en nuestra época contaban con el ábaco, pero ahora…

2) Django sigue muriendo y muriendo, pero no morirá (algo en PHP aquí).

Cuando estaba empezando a aprender, dijeron que Django había terminado. Necesitamos aprender FastAPI con urgencia y subirnos al tren que parte.

Sí, la asincronía y la velocidad del último framework serán útiles en muchos casos. Pero escribir uno o dos meses más para un servicio con cien solicitudes por hora para demostrar que eres un Grandmaster Bit genial que sabe cómo usar FastAPI no te dará puntos, especialmente si trabajas subcontratado.

La cuestión no es que no necesites aprender nada más. No, al contrario. Pero esto no significa que se pueda olvidar a Django. Solo necesita comprender dónde y qué es mejor utilizar.

También hay muchas vacantes para Django. Y en casos extremos, siempre quedarán legados.

3) ¡Lacónico y ordenado!

Aprenda a escribir breve y bellamente. ¡Python está hecho para esto! Puede revisar una matriz varias veces si esto aumenta la legibilidad (y si es pequeña, por supuesto). Su código debe ser fácil de entender.

Después de unos meses, usted mismo deberá comprender lo que sucede en su código, sin mencionar a otras personas que lo verán años después. En general, ten piedad de ti mismo y de quienes trabajarán en tu proyecto.

4) Aprenda a escribir a partir de documentación.

Me gustaba reescribir el código veinte veces al depurar (gracias a los lenguajes interpretados) en función de lo que recibía.

Pero no siempre habrá tiempo para esto, especialmente si otros partidos están retrasando la disposición. Esto es lo que me pasó en el último proyecto, cuando hice ETL, CRUD y puntos finales para transferir datos de clientes a nuestro servicio, pero me dieron los datos solo unas semanas después. Tuve que rehacer muchas cosas, por ejemplo, en muchos lugares no tuve en cuenta que el campo podía ser nulo (Ninguno).

5) El perfeccionismo disminuirá y la implicación con el código también disminuirá.

Me encanta escribir código. Pero no puedo decir que mis ojos todavía brillen tan increíblemente como hace uno o dos años. Y no es agotamiento, me gusta trabajar.

Solo recuerdo la sensación de trabajar en un proyecto escolar o en mi primer proyecto laboral, revisando cada línea. Ahora, por supuesto, no es “funcionará”, pero ahora entiendo cómo molesté a mis colegas de mi último trabajo buscando comas (lo siento).

Respecto a la pertenencia. El código, por supuesto, es mío, pero el proyecto no. Con el tiempo, comencé a comprender que estaba haciendo lo que se esperaba de mí. Y aquí encuentro la principal ventaja: no hago lo que quiero, sino como quiero.

estoy en mi ultimo trabajo

estoy en mi ultimo trabajo

6) Estudio. Aprende a aprender….

Cuando leí sobre esto antes de volver a capacitarme, no me di cuenta de la gravedad de estos puntos. Bueno, ahora estoy sentado como en la foto “lo que piensan los amigos” o “lo que piensan los demás”, lo que me guste más.

Me gusta estudiar, pero a veces se vuelve muy aburrido. Por cierto, no soy el único. Incluso después de 3 años, estoy cansado… No puedo imaginar cómo es para la gente que ha estado haciendo esto durante décadas. El mundo moderno es demasiado rápido. Y no puedes quedarte atrás…

como vivir

Todavía no lo sé, sigo sintiendo la misma pérdida en este zoológico, todavía la misma incertidumbre sobre el futuro, pero ahora es un poco más fácil debido al salario más alto (que en mi vida anterior), más conocimiento en mi campo, y, lo más importante, más humildad, acostumbrarse a este flujo interminable, el surgimiento de la capacidad de aislar lo importante. Eres sólo un extraño para Albert Camus, eres sólo un pequeño robot que hace su trabajo rodeado de azulejos Zima Blue y disfruta de este trabajo.

Publicaciones Similares

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *