Cómo aumentar mis conocimientos, habilidades, aprendizaje y velocidad de trabajo en el campo del software

La capacidad de aprender es un regalo, la capacidad de aprender es una habilidad y la voluntad de aprender es una opción
– Brian Herbert

Por su descripción, siento que no está muy interesado en el campo del software. En mi opinión, es un campo que requiere actualizarse constantemente con la última tecnología al menos en el dominio con el que se sienta cómodo. Y generalmente uno trata de posponer las cosas, lo que realmente no le gusta desde el fondo del corazón.

Primero y ante todo, le pediría que encuentre lo que le apasiona. Porque, por lo que uno es apasionado, nunca tendría que decirle que trabaje para lograrlo.

Tengo algunas pistas para ti:

  • Si eres bueno en inglés y tienes una mentalidad analítica, mira si puedes prepararte para el CAT y aterrizar en una universidad MBA decente. Elija una rama como RRHH o marketing. Estos campos, IMO, requieren habilidades interpersonales que juegan un papel importante que el conocimiento del tema.
  • Si crees que tienes una base sólida de informática (SO, arquitectura de computadoras y diseño de compiladores), incluso puedes intentar prepararte para las PSU. Ofrecen una buena compensación y no lo despedirán por no estar actualizado con la tecnología.

Por su parte de conocimiento:
“Saber lo que sabes y lo que no sabes es verdadero conocimiento”.
Yo diría leer, leer y leer mucho. Elija un área que le resulte más cómoda (en informática) y lea mucho sobre ella. Por ejemplo, si elige Android, lea por qué y cómo se creó y con qué propósito, lea sobre la arquitectura de la plataforma Android y la funcionalidad que se le agrega / mejora en versiones crecientes. y así sucesivamente. También intente contribuir a la sociedad escribiendo sobre lo que entendió, porque, en mi opinión, cuando escribe sobre lo que sabe, lo conoce mejor.

Por su parte de habilidades:
“El conocimiento no tiene valor a menos que lo pongas en práctica”
En efecto. Entonces, para mejorar sus habilidades, la práctica es la salida. Practica todo lo que puedas. Independientemente de la tecnología que adopte, vea cómo puede desarrollar algo pequeño usando eso inicialmente, lo que al menos le hará más fácil. Como hacer algo que calcule y prediga su consumo de leche diariamente.

Por su parte de aprendizaje:
Creo que si alguien tiene fundamentos sólidos y una comprensión sólida de un tema en particular, él / ella aprendería algo nuevo (en esa área) más rápido. Entonces, si eliges un área y obtienes más conocimiento sobre ella, pero si lees más sobre ella, subirías la escalera rápidamente.

Para su velocidad de trabajo:
OMI, si lo haces religiosamente, estoy seguro, tu velocidad definitivamente aumentará.

Soy un gran fanático de profundizar en un proyecto, especialmente algo peculiar que puedes definir con anticipación. Practicar y estudiar solo están bien, pero practicar y estudiar con un objetivo específico en mente me ayuda, al menos, a mantener el enfoque.

Algunas de las ideas a las que me dirijo como trampolín tienden a ser cosas como:

  • Juegos de cartas: especialmente sin una interfaz gráfica, los juegos de cartas son bastante fáciles de implementar, lo que significa que puedes concentrarte en la lógica y en las tecnologías que decidas usar.
  • Clima: no necesariamente el clima específicamente, pero encuentre una API decente (gratuita) disponible. Extraiga los datos, trátelos e informe lo que le interese. Esa es siempre una buena excusa para investigar las bibliotecas de redes.
  • Maquetas: si te gustan los marcos web, elegir una aplicación web famosa y construir algo con un aspecto similar pero con datos extraídos de otro lugar (en lugar de millones de usuarios) funciona.
  • Automatización: presumiblemente, hay partes de su flujo de trabajo que son tediosas y aburridas, que un programa puede hacer mejor.

La idea es tener un proyecto de forma cerrada. Esto no solo le brinda algo que esperar, sino que también lo empuja ocasionalmente fuera de su zona de confort cuando no se da cuenta de que hay una característica que aún no sabe cómo implementar.

Algunas técnicas que podrían o no funcionar:

  • Mire las soluciones existentes a problemas comunes, por ejemplo, patrones de diseño. Tal vez encuentre algo similar que al menos se parezca parcialmente a su problema. Busca en la web.
  • Actúe como si el problema ya se hubiera resuelto y rastree lo que sigue a la solución que debe tomar. Por ejemplo, en lugar de diseñar la API para una clase, simplemente escriba el código que hace uso de la clase, con llamadas a métodos como desee, y luego implemente esa API.
  • Haga otra cosa, por ejemplo, navegar por la red o jugar al solitario, y espere a que suceda la inspiración.
  • Piensa en la persona que más te gusta y finge que quieres impresionarla con tus habilidades para resolver problemas. ¿Cuál sería una solución extremadamente impresionante?
  • Verifique el problema en busca de contradicciones inherentes o requisitos en conflicto, y establezca exactamente cuáles son y qué compromiso podría hacerse. A menudo, cuando existen tales conflictos, pero usted no es consciente, tiende a descartar una posible solución tras otra porque no puede satisfacer perfectamente todos los requisitos.
  • Si ya tiene una posible solución, pero se siente “sucia” (copiar y pegar, variables globales, código de espagueti, etc.), úsela de todos modos y luego mejore.

Algunas cosas que hacer mientras trabaja para mejorar su productividad:

  • Cuando trabaje en una tarea de programación, cierre su navegador, ponga su teléfono en modo silencioso y cierre su aplicación de correo electrónico. Debe estar “en la zona” para poder codificar sin interrupción. A menos que esté trabajando en un equipo de operaciones de producción, no hay alerta electrónica que valga la pena interrumpir su programación y sacarlo de su “zona”.
  • Si se encuentra en una oficina ruidosa y distractora, consiga un par de auriculares con cancelación de ruido y escuche música o un agradable sonido de silencio.
  • Si no puede soportar no interactuar con las personas que lo rodean, es posible que deba orientar su escritorio para que mire hacia una pared o tenga paredes de cubo altas a su alrededor.

A mayor escala, es posible que desee probar algunos proyectos externos. Dependiendo de si te gusta la “estética” o la “diversión” de la programación, o si te gusta interactuar con otros programadores y trabajar en cosas que la gente usará, puedes probar cosas como concursos de programación o involucrarte en un proyecto de código abierto . O puede intentar involucrarse con un grupo más interesante en su empresa, ya que parece que lo que está haciendo actualmente no le interesa.

Más allá de eso, no puedo ofrecer mucho. Es posible que no le guste la programación o que se esté agotando (o ambos). Si las cosas no mejoran pronto, tendrá que pensar mucho si realmente desea permanecer en el campo o si desea trabajar en otra área relacionada donde puede aplicar su experiencia.

Haz una cosa. Haz un horario. Este trabajo se completará en este momento. Luego, cada vez que se encuentre con poco tiempo, se dará cuenta de que no debe retrasar las cosas.
Además, “Come la rana temprano en la mañana”. Significa, haz el trabajo que más odias desde el principio. Entonces el resto de las cosas será más fácil.
Usa el corte de tiempo. Como, trabajar durante 1 hora y tomar 5 minutos de descanso. De esa manera no te aburrirás. Y finalmente, después de trabajar durante 3-4 horas, tómese un descanso de 30-45 minutos. Esto debería ayudarte, supongo.