Disculpas si esta pregunta es demasiado abierta para el sitio, pero me pareció el mejor lugar para formularla.Recursos para desarrollar habilidades de ingeniería de software
Soy un programador autodidacta con pocas matemáticas en su formación académica y que, a lo largo de una carrera de diez años, se movió lentamente de la creación de scripts web y desarrollo web a ingeniería de software intermedia y de nivel de datos . Como resultado, hay áreas de mi conocimiento y experiencia que son algo deficientes.
Después de una revisión reciente con mi gerente, se me indicó que superar estas brechas era lo único que se interponía entre mí y un ascenso a un puesto de ingeniero sénior. Sin embargo, para lograrlo, iba a tener que encontrar un enfoque estructurado para aprender y demostrar que había tomado en cuenta lo que necesitaba saber.
Personalmente, identificaría mis áreas de debilidad de la siguiente manera. Tenga en cuenta que el problema en muchos casos no es que no entiendo, técnicamente, cómo funcionan estas cosas, sino que no veo dónde está o no es apropiado aplicarlas. Por ejemplo, sé lo que es una Interfaz y, técnicamente, lo que hace, pero me cuesta diferenciar cuándo es apropiado usar una Interfaz sobre, por ejemplo, un grupo de clases de OO relacionadas que heredan de una clase base. Por lo tanto, es más una ignorancia sobre el buen diseño del software que su ignorancia técnica. Tengo problemas para apreciar, digerir y trabajar en cosas como sistemas poco compactos.
- Interfaces
- Delegados
- patrones de diseño
- arquitectura de red & protocolos
también que nunca he hecho algunas de las cosas de bajo nivel, como compiladores y cosas por el estilo. Me pregunto a veces si eso marcaría una gran diferencia en mi capacidad para escribir código, que no solo es efectivo sino que también está bien optimizado si conozco mejor este tipo de material.
A veces la preocupación de que no puedo identificar las debilidades en mi conjunto de habilidades porque no sé cómo hacer las preguntas correctas me irrita. Así, con la esperanza de que he enmarcado adecuadamente la cuestión, me gustaría que sus sugerencias sobre:
- Desde el sonido de lo que estoy en la actualidad carezcan ¿hay otros temas que deba considerar que mira?
- ¿Dónde hay algunos buenos recursos para aprender este material?
- ¿Hay algún curso estructurado y autodidacta que pueda estudiar y que sea relevante? No tengo, lamentablemente, tiempo para tomar una calificación formal.
Saludos, Matt
Matt También asistiría a encuentros de noches basadas en .net. Lucho por llegar a todos (como tú tengo niños pequeños). Pero http://dotnetdevnet.com/ y http://cms.vbug.net/Regions/VBUG-Bristol/Bristol-Events.aspx son locales y muy buenos. –
Matt, Estoy en una situación similar ahora. Cualquier consejo basado en tu experiencia. – jaamit