¿Cuáles son algunas habilidades de TI que pueden ser útiles para un desarrollador de PHP?

Creo que un desarrollador al menos debería ser consciente de las preocupaciones más grandes de la arquitectura y las redes. Refactorizar el código es costoso y, en mi experiencia, generalmente es producto de la ignorancia del desarrollador sobre preocupaciones de TI más grandes y eventuales:

  1. Seguridad de información. Solo una minoría de desarrolladores comprende las vulnerabilidades creadas por las malas prácticas de codificación que pueden producir responsabilidades significativas para el propietario de la implementación de la aplicación. Mire este problema desde el nivel empresarial le da al desarrollador una idea mucho más clara de cómo priorizar sus prácticas. ¿El caso de Carmel? meh ¿Validación del lado del cliente y filtrado con validación del tipo del lado del servidor? Oh si.
  2. Concurrencia. A menudo, TI se enfrenta a la necesidad práctica de dividir una parte integral de una aplicación en un servicio de red (es decir, inicio de sesión único) a medida que se escala a un gran número de usuarios. Si comprende esto, entonces no hay argumento sobre por qué usamos MVC o patrones de codificación equivalentes o por qué la complejidad ciclomática es una consideración importante.

Enumero solo dos, pero creo que comprender los conceptos de TI generalmente lo convierte a uno en un desarrollador mucho mejor. Uno debe aprender tanto como sea posible.

Las únicas habilidades de TI que “debe tener” para ser un desarrollador de PHP son PHP y MySQl (o alguna otra base de datos popular) con al menos un conocimiento básico de HTML / CSS y javascript. Puedes hacer una gran carrera por excelencia en los dos primeros y respetabilidad en los últimos 3.

Más allá de eso, la habilidad más importante que podría tener sería la comunicación. Ser capaz de escribir o conversar efectivamente no es una habilidad de TI, pero duplica fácilmente el valor de cualquier habilidad de TI que tenga. Si no puede reunir de manera efectiva los requisitos o comunica los entregables del proyecto, todas las habilidades de TI del mundo le servirán en un grado mucho menor.

Otro elemento intangible no informático que lo ayudará a tener éxito es comprender el negocio. Estoy muy seguro de que, debido a que he sido propietario de varias empresas multimillonarias, puedo hablar con clientes potenciales sobre su negocio en un nivel mucho más allá del desarrollador PHP típico. Por lo general, no solo puedo traducir su modelo de negocio en lógica y código, también puedo mejorar y expandir sus flujos de ingresos con frecuencia y ofrecer sugerencias / soluciones que les permitan aumentar su ROI.

  1. Conocimiento front-end – o HTML / CSS es imprescindible.
  2. Prioridad inferior pero muy importante son Javascript. Luego puede elegir jQuery, Angular o ReactJS o todos ellos para obtener más información.
  3. Photoshop: si planea convertirse en un desarrollador senior, es posible que desee hacer trabajos como cortar un tema y ponerlo en HTML / CSS y luego usarlo.
  4. Se recomienda el conocimiento de la administración del servidor. Sabrá qué aconsejar a sus clientes para que elijan su servidor / alojamiento, sin esperar a preguntar a otro desarrollador de nivel superior o consultor de servidor.

HTML y CSS (para desarrollo de diseño de front-end) puede obtener tutoriales de los Tutoriales web en línea de W3Schools

Cosas relacionadas con PHP que puede obtener de Learn to code | Codecourse

Las habilidades más suaves como la gestión de personas, la gestión de clientes, la recopilación de requisitos, la gestión de proyectos, etc., son muy valiosas.