Para un desarrollador de iOS con 4 años de experiencia, ¿cuáles son las siguientes / otras tecnologías / idiomas que debe / debe aprender?

Mire los diversos marcos de Apple, vea si alguno de los que no tiene experiencia está relacionado con el tipo de trabajo de iOS que realiza. Haz un proyecto de juguete que los use. Si va bien, incorpórelo a su trabajo real.

Hazlo hasta que te quedes sin marcos.

El estudio de algoritmos generales es una buena idea. Duran más que los marcos, y muchas entrevistas de trabajo dependen mucho de ellos. Por lo tanto, le pagan una cantidad desproporcionada de bien a su salario, pero bueno, en realidad son útiles.

Aprender nuevos idiomas puede brindarle información sobre nuevas técnicas y formas de enmarcar problemas. Quizás mire a Rust, ML o Eiffel. Ninguno es tan directamente útil en iOS, pero estirarán su mente de maneras interesantes.

El ensamblaje del BRAZO podría ser útil. Puede que nunca lo escriba realmente, pero puede ser útil saber cómo leerlo mientras está depurando.

Oh, ve a ver el NSBlog de Mike Ash. Lee todo esto. Quizás dos veces. 🙂

Las principales preguntas para hacer esto realmente es qué quieres hacer con tu carrera. Si puede responder esa pregunta, la respuesta a su pregunta se ajustará por sí sola.

Para mí, dirijo mi propio negocio haciendo desarrollo móvil, así que concentro toda mi energía en iOS (Objective-C y Swift), Android, PHP, MySQL. Los últimos 2 son útiles para permitirme trabajar con la creación de API donde sea necesario (hay otros sistemas y potencialmente mejores para la generación de API, pero PHP funciona para lo que hago y necesito en este momento). Sin embargo, conozco un nivel medio a alto en más de 10 idiomas diferentes (pero rara vez los uso.

‘Puedo’ pasar al desarrollo de Windows Mobile, pero personalmente no lo veo como un gran jugador en el mundo móvil (sí, está ahí pero no lo suficiente como para enfocar mi tiempo y energía todavía).

Mi próximo enfoque es el desarrollo de juegos usando UDK a medida que avanzo en el mercado de juegos.

Lo importante aquí es que mi movimiento en tecnología está guiado por lo que quiero hacer con mi negocio y mi carrera (no necesariamente donde está la tendencia tecnológica).

Gracias por esta excelente pregunta. En primer lugar, estoy feliz de que ese objetivo sea rápido y rápido. Sin embargo, algo bueno sería no codificar en ambos al mismo tiempo. Porque como programador te ayudará si codificas en uno. Asumiré que uno es veloz por razones obvias y ahora que lo sabes rápido. Necesita y siempre tendrá el puente entre un buen desarrollador rápido y un buen desarrollador con las mejores prácticas, como la programación orientada al protocolo en la conversación rápida, si no lo está haciendo, hágalo ahora e iOS 10 le ofrece una tonelada de marcos nuevos / modificados Apple y los otros marcos populares si está utilizando alguno como Alamofire, etcétera. Y finalmente, vaya a un área específica o tenga un proyecto paralelo y apunte a un marco con el que no esté familiarizado, como el audio o la animación central o cualquier cosa. O piense en escribir cualquier biblioteca de código abierto para la comunidad que pueda ayudarlo a usted y a otros. Por lo tanto, no hay otros idiomas que sean rápidos con todo lo mencionado anteriormente. Gracias por leer mi larga respuesta.

Go Cloud.

La experiencia de iOS lo hace bueno solo en el front-end de la “Solución”. Con experiencia en tecnologías de back-end (nube), será un desarrollador / arquitecto de soluciones. Puede desarrollar sus propios productos, puede proporcionar consultoría de extremo a extremo, puede ser un empresario tecnológico o un CTO en última instancia.