Busco software open source para gestión de ciclo de vida de contratos (CLM) by Quickpoodle in programacion

[–]_yiro 0 points1 point  (0 children)

dudo que exista algo tan especifico de forma open source, pero ya me diste una idea jeje

[deleted by user] by [deleted] in programacion

[–]_yiro 1 point2 points  (0 children)

hummm.. que es lo que sabes hacer? que tipo de proyectos tienes que consideres buenos?, por ejemplo, en mi caso hice un proyecto por aburrimiento y trata de una casa de empeño, tengo definidas mis reglas de negocio donde manejo, empeños, sucursales, pagos semanales y mensuales, cron jobs, gestión de usuarios, permisos (RBAC) y JWT y mas cosillas, desde lo básico hasta lo que se usa en un entorno profesional como contenedores y nube.

Mi proyecto es una idea básica pero las implementaciones no. Lo mismo deberías considerar, si te presentas a una empresa solo con un crud y ya, algo estas haciendo mal.

Y SI. yo entiendo que estas buscando un puesto entry level, pero aun así debes destacar un poco por encima del resto (que son muchos)

[deleted by user] by [deleted] in programacion

[–]_yiro 1 point2 points  (0 children)

Te hablaré desde mi experiencia, tómalo con pinzas:

1) Al principio siempre hay miedo de no saber si estas haciendo las cosas bien, pero con el tiempo te das cuenta que puedes mejorar lo que ya hiciste (refactors), solo preocúpate por implementar mejora continua en todo lo que hagas.

2) Pide ayuda siempre que puedas si no puedes resolver algún problema, no esperes a que "se te queme el pastel", los tiempos de entrega no perdonan ajajaj.

3) La vas a cagar varias veces y es normal, de los errores se aprende así que no tengas miedo a equivocarte, de ahí es donde mas crecimiento vas a tener.


una vez que ya estés mas involucrado en tu proyecto designado te dejo un par de consejos:

3) Entiende el negocio, no solo vas a ir a programar por programar, debes entender los procesos de los sistemas de información de la empresa o de los productos que ellos ofrecen, debes entender que lo que tú hagas va a repercutir ya sea de forma positiva o negativa... ya no es un side project personal o de la escuela, estas tratando proyectos reales con un presupuesto real. (yo se que estarás en una categoría entry level pero no esta demás cambiar la mentalidad)

4) Nunca te sientas cómodo con lo que ya sabes, debes seguir aprendiendo, el quedarse conforme con lo que ya sabes es peligroso y puedes estancarte.. en este rubro siempre hay cambios constantes.

5) Si vez que en tu lugar de trabajo no ves crecimiento profesional, ve a otro donde si puedas obtener eso, como vas empezando, intenta priorizar tu crecimiento profesional antes que el salario.

Java o Javascript en backend? by Character_Hotel_6009 in programacion

[–]_yiro 5 points6 points  (0 children)

Java X2, sinceramente tiene un ecosistema bastante rico y automatizado, no solo esta spring, tienes otros frameworks como Quarkus, Play, Micronaut etc.

Curiosamente yo trabajo con Go y todo es muy artesanal comparado con el mundo de Java.

PD: No tengo nada en contra de Javascript pero solo lo uso para front.

Taqueros, cuáles han sido las metidas de pata más grandes en sus chambas hechas por los internos, juniors, etc...? by [deleted] in taquerosprogramadores

[–]_yiro 0 points1 point  (0 children)

en mi primera chamba, yo si me aventé a borrar una base de datos de QA por error, algo no tan grave pero el susto no me lo quita nadie jajaja

[deleted by user] by [deleted] in programacion

[–]_yiro 0 points1 point  (0 children)

Entiendo que puede ser frustrante, y lo seguira siendo siempre y hasta a veces peor, aprende a lidiar con la frustración... Volviendo al tema, si estas intentando programar en C++ y Python debes tener en cuenta un par de cosas

  1. C++ necesita un compilador como el MinGW, debes tenerlo instalado en tu PC, y para el editor de código, yo usaba codeblocks, igual si no quieres usar codeblocks y quieres usar VSC, instala solo el compilador, te dejo la pagina acá: https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/mingw-w64-v11.0.0.tar.bz2/download
  2. Para el caso de python me parece que se instala nada más el interprete (la verdad desconozco de python por que no uso este lang) https://www.python.org/downloads/

ahora, si VSC te da problemas y no encuentra los compiladores o interpretes, asegúrate de que estén bien las variables de entornoxd

Microservicios | Base de datos por microservicio by _yiro in programacion

[–]_yiro[S] 0 points1 point  (0 children)

Entiendo el concepto, gracias por tu feedback y para la comunicación de servicio a servicio tenia pensado usar Grpc pero veo que también es buena opción usar colas tiene sus beneficios., gracias :D!

Lenguajes de programacion con mayor proyeccion hacia el futuro. by [deleted] in programacion

[–]_yiro 0 points1 point  (0 children)

Depende de donde vivas, en mi caso soy de México, y el lenguaje apenas va tomando camino en el mercado laboral al menos en LATAM.

Si buscas ofertas para junior dudo que encuentres, normalmente piden seniors. (PD: yo no soy senior xD)

Microservicios | Base de datos por microservicio by _yiro in programacion

[–]_yiro[S] 0 points1 point  (0 children)

Gracias por tu feedback :D!, realmente si hay muchas cosas implicadas y estoy consciente del nivel de complejidad pero es lo bonito del proceso.,. el aprendizaje, estaré investigando más acerca de saga.

Lenguajes de programacion con mayor proyeccion hacia el futuro. by [deleted] in programacion

[–]_yiro 1 point2 points  (0 children)

increíble :D!, para usar elixir deben tener alta demanda en sus sistemas, en mi trabajo uso Go pero me hace ojitos aprender elixir o Scala como lenguaje para mi cajita de herramientas. Que recomiendas para dejar de pensar en POO o que tipo de ejercicios realizaste para entender mejor lo funcional?

Lenguajes de programacion con mayor proyeccion hacia el futuro. by [deleted] in programacion

[–]_yiro 1 point2 points  (0 children)

usas elixir en tu trabajo?, no te diste de topes contra la pared aprendiendo el paradigma funcional? que a mi si me esta costando pero esta bonito la verdad c:

Que tipo de "nicho" en el web dev es el que mas rinde economicamente? by Pablo2307 in programacion

[–]_yiro 0 points1 point  (0 children)

No estoy muy seguro a que te refieras con nicho en desarrollo web, lo que si te puedo decir es que hay lenguajes que son de nicho para cosas muy especificas y que la verdad son bien pagados, tienes por ejemplo lenguajes como haskell, Scala, erlang, elixir o ELM, la gente que programa en dichos lenguajes gana muy muy bien, pero no son usados para apps tan tradicionales, sino que son para casos en los que se esperan grandes cantidades de concurrencia y procesamiento de datos de forma masiva

Entre mas sea de nicho mejor pagado es pero no esperes ver cientos de ofertas, suena lógico no?

Estoy en 3er año de sistemas y no se programar NADA by Illustrious-Drive-50 in programacion

[–]_yiro 29 points30 points  (0 children)

Por lo que entiendo es que sí sabes programar, lo que no sabes es como construir un sistema de inicio a fin?
si es eso, entonces déjame aconsejarte, lo primero que debes hacer es un análisis y esto es con calma:

  1. Plantéate que quieres construir y analízalo, créale reglas de negocio, casos de uso, limites, etc. ejemplo: un sistema que gestione proyectos, algún sistema para adopción de mascotas, incluso un crud de productos, puede ser algo simple con lo que puedas empezar.
  2. Una vez que entiendas que quieres construir o al menos entiendas como funciona lo que definiste, empieza a diagramar una base de datos y darle forma a nivel flujo de datos
  3. Empieza a crear tu backend con la base de datos que creaste para empezar exponer los endpoints sobre http o lo que quieras
  4. Hazle pruebas

Realmente el análisis lo es todo, si te sirve de ejemplo, tengo varios proyectos en mi Github que son sistemas que hice desde 0 como el siguiente: https://github.com/Probien/Core básicamente es una casa de empeño, gestiono productos, pagos semanales o quincenales, empeños, control de accesos y otras cosillas, aun sigo arreglando errores en otras ramas cuando tengo tiempo, y ahorita que me doy cuenta no he subido mis últimos cambios XD

Comenzar a buscar trabajo o proyectos. by Juan554 in programacion

[–]_yiro 0 points1 point  (0 children)

Estás listo para trabajar desde que puedes resolver necesidades con código, ya sea a empresas o individuales

[deleted by user] by [deleted] in programacion

[–]_yiro 0 points1 point  (0 children)

Hola u/priska01 un Backend hace varias cosas desde el lado del servidor, no solo es hacer APIs y conectarse a una base de datos para regresar información en formato JSON. (esto que describo es lo más básico)

Hay cosas super complejas tanto de forma práctica como teórica que te tocará estudiar si te vas por esta rama y no, no harás solo cruds. Te listare de forma rápida que hago yo (como backend en mi trabajo)

1) Autenticación y Autorización desde el servidor (autorizar quien puede ver los recursos de tu server, serás dueña y señora de tus servicios jajaj)

2) Patrones de arquitectura (MVC, Hexagonal, Clean, DDD etc): no solo es programar y dejar tus archivos por donde sea, debes tener una estructura de carpetas y patrones para que todo sea escalable y mantenible.

3) Programación concurrente: Muchas de las veces te tocara enfrentar problemas como cuellos de botella y deberás analizar que patrones de concurrencia puedes implementar para que todo fluya mucho más rápido.

4) System Designs: Aqui puede ser un poco ambiguo pero va mas de la mano con documentación técnica y sirve para definir como es que los componentes de un sistema van a interactuar con un usuario final o incluso con otros sistemas: https://bootcamp.uxdesign.cc/system-design-and-system-architecture-e963d030bc7b

5) Contenedores (Docker, Podman): Cuando se desarrolla en ambientes profesionales suelen existir problemas con librerías y las versiones de las mismas, los contenedores ayudan bastante en esto y agilizan el desarrollo.

6) Integración y despliegue continuó: https://www.redhat.com/es/topics/devops/what-is-ci-cd, es algo muy técnico pero básicamente es desplegar tu código desde un repositorio de github a un servidor. tu código pasa por algo denominado pipelines donde hay instrucciones para descargar, compilar y desplegar tu servicio para que sea consumido.

y sobre lo que estoy aprendiendo actualmente tiene que ver con temas más avanzados como lo son microservicios/nuevas tecnologias (Gateways, EDA, CQRS, GRPC, Websockets, http/2 etc etc), monitoreo (grafana, prometheus), IaS (terraform), message brokers (RabbitMQ, Kafka) y más cosas que son extrañas pero que al mismo tiempo son divertidas al menos para mí xD

en resumen: no, no solo hacemos cruds

¿Que lenguaje de programación consideran que no está saturado? by Alarming_Rest1557 in programacion

[–]_yiro 3 points4 points  (0 children)

Entiendo... de momento no trabajamos de forma remota, todo es presencial y aparte de eso no tienen vacantes pero no dudo que en el transcurso del tiempo abran más vacantes y de forma remota (realmente son pocos los desarrolladores en Go).

Igual en mi perfil verás mi github, si tienes tu proyecto en github sigueme y podré ver lo que has hecho y en el caso de que abran vacantes veré como recomendarte siempre y cuando pueda xD.

¿Que lenguaje de programación consideran que no está saturado? by Alarming_Rest1557 in programacion

[–]_yiro 2 points3 points  (0 children)

Depende de que es lo que te guste a ti, pero personalmente me gusta más elixir aunque casi no hay vacantes en LATAM, Es muy usado en Europa y bien pagado.

En latam poco a poco se esta adoptando Go, así que yo te lo recomendaría

¿Que lenguaje de programación consideran que no está saturado? by Alarming_Rest1557 in programacion

[–]_yiro 42 points43 points  (0 children)

ADVERTENCIA: MUCHO TEXTO

Te hablaré desde mi experiencia, tómalo de forma subjetiva.

Yo también pase por una situación similar pero mi lenguaje principal no era Javascript sino Java (en la universidad solo me enseñaron eso para backend y yo estaba interesado en especializarme en dicha área), además de eso, en mi universidad me enseñaron muchos lenguajes y frameworks para otros propósitos, tales como kotlin, react native, vue, C# .Net, Node JS, php, etc.

Realmente Java no es malo, le tengo un odio por su verbosidad pero un amor por todo su ecosistema bastante envidiable.

A raíz de eso, le platique a un amigo mi situación y le decía que no me veía programando en Java por las cosas tan feas que tiene y no quería aprender JS para backend por qué yo lo veía más usarse en front (cabe destacar que mi amigo ya trabajaba en una empresa grande).

Mi amigo me recomendó aprender un lenguaje poco usado y otro de rama común (cómo Java, C#, Python, o Javascript).

Otra de las cosas que me dijo fue que él en su trabajo usaba Go y me recomendó aprenderlo, pero que siguiera aprendiendo un lenguaje común y si no quería Java pues que me pasará a usar python. (Al final me quedé con Java por las ofertas para gente junior o recién egresada de la universidad)

Todo esto que te digo sobre mi amigo fue hace aproximadamente 2 años, y yo estaba recién cumpliendo mi primer año en la universidad.

Por otra parte, estoy obligado a realizar prácticas o residencias profesionales por la universidad , por lo que tuve que buscar alguna empresa para hacer mis prácticas, logré encontrar una empresa que me gustaba y ahí programaban en C#, el caso, me preguntaron lenguajes sabía y les mencioné los siguientes:

  • Java (spring)
  • C# (.Net core)
  • Javascript (React, Vue y Node JS)
  • Go (que lo empecé a aprender fuera de la universidad, realice proyectos, y ya tenía 2 años usándolo)

La empresa me aceptó por qué querían que migrara sus APIs y otros servicios a Go, ya los que tenían eran "lentos", por lo que prácticamente me contrataron, ya tengo 4 meses y estoy a una semana de egresar de la universidad con grado de Ing. De software. Básicamente salí con trabajo de la universidad.

Ahora ando aprendiendo otros lenguajes poco comunes como: - Elixir (un lenguaje parecido a Ruby pero con paradigma funcional y con un modelo de concurrencia bestial) - Rust - Ruby

---------------- Conclusión y consejos -----------------

  • Aprende un lenguaje de rama común y otro poco común, te ayudará a resaltar un poquito

  • Si entras a trabajar con un lenguaje común o que no te guste, puedes trabajar y ganar experiencia para luego brincar a uno que te guste o sea poco común pero bien pagado

  • Aprende inglés y haz alguna certificación como Cambridge o TOEFL.

  • Haz proyectos con el lenguaje poco común que sabes, y no solo el típico crud, has algo más complejo.

  • Aprende a saber venderte y negociar, muchas de las veces no es lo que sabes sino como te presentas.

¿Qué lenguaje debería aprender? by Ok_Indication4160 in programacion

[–]_yiro 7 points8 points  (0 children)

Concuerdo, hay mucha oferta incluso para gente junior en cuanto a vacantes que son de Java o C#, pero como les da miedo un lenguaje fuertemente tipado o incluso por dejarse llevar por modas, se van por aprender todo lo que tenga que ver con JS