Habilidades técnicas
1. Java
Por supuesto, debería sentirse cómodo con el lenguaje de programación Java. Si bien puede desarrollar aplicaciones de Android utilizando una serie de tecnologías diferentes, la mayoría de las posiciones son para desarrollo nativo utilizando Java y Android Studio o Eclipse como su IDE.
- ¿Cuál es la mejor aplicación de Android para clasificar imágenes en una galería sin mover archivos?
- ¿Es obligatorio usar JSON para hacer una aplicación de Android de cricket en vivo?
- ¿Hay algún problema si también elimino la información del usuario al desinstalar Android Studio?
- ¿Qué idiomas se usan durante el desarrollo para Android y cuáles son algunas aplicaciones que tendría que instalar para comenzar a escribir código y desarrollar una aplicación real?
- Cómo hacer un hash de un sitio web y comparar los cambios en Android
¿Qué significa exactamente sentirse cómodo con Java? No necesita conocer todos los detalles más recientes de la última versión, pero debe tener un conocimiento completo de la sintaxis básica y las estructuras de programación. Debe saber cosas como variables, listas, bucles, estructuras de control y conceptos orientados a objetos, como la clase frente a métodos estáticos y herencia. También debe sentirse cómodo usando la documentación para aprender a usar nuevas partes del SDK de Java. Una gran parte de cualquier posición como desarrollador es el aprendizaje continuo. Echa un vistazo a nuestro nuevo curso de Java Basics.
2. El SDK de Android
De nuevo, esto es evidente. Pero, ¿qué áreas del SDK debe conocer específicamente? La siguiente lista incluye muchos conceptos básicos de Android con los que debería estar familiarizado:
- Una comprensión básica de diseños y vistas
- Actividades y su ciclo de vida.
- Entrada del usuario
- Obtener datos de la web
- Almacenamiento de datos
- Vistas de colección (como ListViews) y adaptadores (predeterminados y personalizados)
- Barra de acciones
- Acomodar diferentes tamaños y densidades de pantalla
Como sin duda se espera que pruebe cosas nuevas, también debe sentirse cómodo utilizando la documentación y los recursos de Android como Treehouse para comenzar con una nueva parte del SDK. Y esto probablemente no hace falta decirlo, pero debe ser competente con el uso del depurador en su IDE para ayudar a solucionar errores en su código.
3. Trabajando con API
Como se mencionó anteriormente, obtener datos de la web es una habilidad bastante básica para el desarrollo de aplicaciones, ya que muchas aplicaciones tienen un componente basado en la red. Es posible que esto no sea necesario para todos los trabajos, pero muchas publicaciones que he visto esperan que el desarrollador pueda trabajar con su propia API o alguna otra API de terceros. Por lo general, serán API JSON / REST, ¡aunque XML / SOAP todavía aparece! Recomendaría centrarse en JSON / REST y solo aprender XML / SOAP si es necesario. Los conceptos básicos siguen siendo relativamente similares; es solo una forma diferente de solicitar y luego analizar los datos. Algunos de nuestros cursos en la pista de Android pueden ayudarlo a dominar el uso de API.
4. Git
Es posible que esta habilidad en particular no sea necesaria, pero si está trabajando solo o con un equipo, generalmente querrá usar algún tipo de sistema de control de versiones. No tiene que ser un experto en la gestión de un montón de conflictos de fusión, pero debe comprender los conceptos básicos de la creación y el uso de un repositorio y la confirmación y el impulso de los cambios. Tenemos un excelente curso de Git Basics en Treehouse que recomiendo encarecidamente.
5. Habilidades de back-end
A veces, las publicaciones de trabajo pedirán que los desarrolladores de Android también contribuyan en el back-end de su sistema. He tenido esta experiencia yo mismo. Esto puede ser más difícil de agregar a su conjunto de habilidades cuando recién está comenzando, ya que las tecnologías de back-end varían mucho (Rails, .NET, Django, NodeJS, etc.), pero quería enumerarlo ya que aparece a menudo suficiente para justificar la discusión.
Sin embargo, no dejes que esto te desanime del desarrollo de Android. Puedes ignorar estas publicaciones o usarlas como motivación para aprender o repasar tus habilidades de back-end. Y recuerde, los conceptos básicos de programación se traducen bien, por lo que a veces solo es cuestión de familiarizarse con la arquitectura de un sistema y la sintaxis del lenguaje. No es necesario profundizar necesariamente en estas tecnologías de fondo. A veces solo necesita sentirse cómodo modificando las API de back-end existentes para trabajar con los cambios en la aplicación en la que está trabajando.