Habilidades y preguntas de la entrevista para desarrolladores de Android

Publicado: Última actualización:
Habilidades de desarrollador de Android

Habilidades de desarrollador de Android tienen una gran demanda en el desarrollo de software, y se espera que esta demanda crezca aún más. El sistema operativo Android es el sistema operativo móvil dominante en la actualidad. Las aplicaciones de Android funcionan en innumerables modelos de teléfonos inteligentes y tabletas, así como en cualquier otro tipo de dispositivo Android.

En consecuencia, una campaña de contratación para encontrar desarrolladores de Android es bastante difícil. La búsqueda tiene que ser rápida y precisa si quiere encontrar a alguien con las habilidades adecuadas para convertirse en un desarrollador de Android para su empresa. La selección suele ser lo que más tiempo lleva, así que vamos a descubrir cómo hacerlo de forma rápida y eficaz.

¿Qué es Android?

Android es el sistema operativo más popular del mundo dedicado principalmente a los dispositivos móviles. El código fuente es desarrollado por Google bajo el proyecto Android Open Source (AOSP). Las versiones posteriores suelen publicarse anualmente y se anuncian en las conferencias Google I/O.

Una característica del desarrollo de aplicaciones para Android es que, además de en los teléfonos, puede instalarse en tabletas y en una serie de dispositivos integrados, por ejemplo, televisores (Android TV), pantallas en los coches (Android Auto) o relojes (Android Wear).

Las principales ventajas del sistema operativo Android son las siguientes:

-Código de fuente abierta (https://source.android.com/

-La plataforma está desarrollada por Google. Cada medio año, el sistema proporciona a los usuarios y programadores algo nuevo. Google es muy particular en el desarrollo de todo el ecosistema, desarrolla una serie de bibliotecas, herramientas (IDEs basados en IntelliJ), organiza una gran cantidad de conferencias, talleres, screencasts, etc.

- Un diseño consistente, especialmente desde que se introdujo el concepto de Material Design. La lucha constante por mantener un aspecto consistente dentro del desarrollo de aplicaciones Android, para que al cambiar de aplicación, los usuarios no se pierdan.

Lista de habilidades de los desarrolladores de Android

Hay ciertas cosas que los desarrolladores de Android deben saber cuando se trata de los fundamentos del desarrollo de Android. Un reclutador de TI también debería conocer estas habilidades.

Arquitectura de la plataforma Android- Se refiere a cuántos procesos se lanzan durante el inicio de la aplicación. ¿Cuántos hilos se inician y de qué manera se comunican las aplicaciones Android con el sistema y con otras aplicaciones? Por ejemplo, cuando se elige un contacto o se comparte una foto, ¿cuál es el hilo principal y cómo funciona dentro de la plataforma Android?


- Una parte importante del desarrollo de Android es conocer los componentes básicos de la plataforma: Activity, Fragment, Service, Intent, BroadcastReceiver, ContentProvider.


- Los desarrolladores de Android deben conocer las bibliotecas estándar y más populares que se utilizan durante el desarrollo de aplicaciones Android. Las que apoyan la creación de aplicaciones Android. Algunos ejemplos son: Android Support Library, Google Play Services, Retrofit, OkHTTP, rxJava, EventBus, Dagger

- Los desarrolladores de Android deben conocer los patrones de diseño que permiten escribir aplicaciones de forma que se puedan mantener, ampliar y probar fácilmente. Incluyendo las últimas tendencias: MVP, MVVM, Arquitectura limpia.


- Normas relativas a la creación de vistas eficaces, capacidad de crear vistas personalizadas reutilizables


-Capacidad de hacer frente a la fragmentación del mercado y a la multitud de dispositivos de diferentes fabricantes con diversas versiones del sistema. Mecanismos que ofrece la plataforma para garantizar el buen funcionamiento de las aplicaciones Android en dispositivos con pantallas de diferentes tamaños/densidades. Esto incluye también varias versiones de idioma y varias versiones del propio sistema.


-[En una nota más ligera] Cada versión de Android presenta un dígito y una letra (desde la C hasta la N). Google siempre trata de idear un nombre de pastelería o algo dulce comenzando

¿Cómo verificar las habilidades de los desarrolladores de Android en la fase de selección?

La selección de desarrolladores de aplicaciones Android puede ser difícil si no eres un Desarrollador de sí mismo. Es aún más difícil cuando la propia tecnología está en constante desarrollo.

Aquí es donde las plataformas de pruebas para desarrolladores, como DevSkiller TalentScore, dan una ventaja a los reclutadores. Evalúan las habilidades técnicas necesarias para desempeñar la función técnica en cuestión, en este caso, las habilidades necesarias para desarrollar aplicaciones Android.

Sin la selección de desarrolladores, todavía hay algunos consejos útiles de reclutamiento que le ayudarán a verificar las habilidades de los desarrolladores de Android.

Revisión técnica de las habilidades de los desarrolladores de Android basada en el CV

Un currículum vitae puede ofrecernos mucha información útil sobre un desarrollador de aplicaciones móviles. Sin embargo, hay que saber qué es lo más importante. Como reclutador de TI en busca de un desarrollador de aplicaciones Android, la siguiente información valiosa será útil:

- Un buen desarrollador de aplicaciones para Android debería haber trabajado en varias aplicaciones publicadas en la tienda Google Play. Si estas aplicaciones aún están disponibles, hay que comprobar cómo son, cómo funcionan y cuántas descargas tienen en la tienda de Google Play.

-Cualquier persona que haya trabajado en el desarrollo de aplicaciones para Android normalmente habrá formado parte de un equipo. Averigua qué tamaño tenía el equipo de desarrollo de la aplicación. ¿Cuál era el nombre de la empresa de desarrollo de aplicaciones? ¿Cuál era su función dentro del proyecto? ¿El proyecto en el que trabajaban también se creó para otras plataformas, por ejemplo, iOS y Windows?

Si no puede deducir ninguna de estas informaciones del propio CV, merece la pena plantear estas preguntas a cualquier desarrollador potencial de aplicaciones durante una entrevista telefónica o en vídeo.

Como reclutador técnico que busca contratar a alguien para el desarrollo de aplicaciones Android, debe estar familiarizado con la terminología utilizada por el estudio de Android. Por lo tanto, cualquier candidato que desee conseguir un puesto de trabajo como desarrollador de Android también debería estar familiarizado con estos términos.

Los desarrolladores de Android deben poseer ciertos conocimientos básicos cuando se trata de aplicaciones móviles de Android. Hay ciertos marcos y herramientas que se utilizan para hacer el trabajo de un desarrollador de Android fácil, o más fácil de todos modos. Esto incluye:

-Componentes básicos, Activity, Fragment, Intent, Service, BroadcastReceiver, ContentProviderHerramientas de prueba, Espresso, Mockito, Robolectric, Interfaces de usuario y componentes básicos de la UI de Android (principalmente de Material Design) Toolbar, ViewPager, RecyclerView, CardView, Floating Action Button, Navigation Drawer, BottomBar, CoordinatorLayoutBuild tools, Gradle (Eclipse y ADT son legados), las bibliotecas y lenguajes de programación más populares, Support library, Google Play Services, Retrofit, EventBus, rxJava, rxAndroid, OkHttp, Dagger, Android SDK


Información adicional útil en el desarrollo de Android

En el mundo del sistema operativo Android, hay algunos lanzamientos clave del sistema que son revolucionarios o introducen algo nuevo. Para más información, visite http://socialcompare.com/en/comparison/android-versions-comparison.

A continuación se muestran algunas de las versiones de Android disponibles:

Android 7.0

  • Modo multiventana (dos aplicaciones simultáneas en una pantalla dividida)

Android 6.0

  • Permisos en tiempo de ejecución. Nuevo enfoque para solicitar el acceso a los datos sensibles de los usuarios (basado en el ejemplo de iOS)

Android 5.0

  • Diseño de materiales. La revolución de la interfaz de usuario en las aplicaciones

Android 4.0

  • La primera versión del sistema que no tiene variantes para teléfonos/tabletas, sino que funciona en dispositivos con cualquier tipo de pantalla

Certificación en desarrollo Android

  • Recientemente, Google ha puesto en marcha un sistema de certificación que no ha ganado popularidad, por lo que tiene poca importancia en el proceso de contratación. Sin embargo, para obtener más información, vaya a https://developers.google.com/training/certification/

Experiencia previa: lo importante para un reclutador de TI

Si ves en el currículum de los desarrolladores de aplicaciones Android que tienen un par de años de experiencia, indaga un poco más y busca las siguientes cosas en su CV:

  • Trabajo en equipo: busca pruebas de que han trabajado con otros desarrolladores de Android o han dirigido un equipo (en el caso de un desarrollador senior de Android) que ha trabajado en varias aplicaciones de Android.
  • Cualquier persona que tenga éxito en el desarrollo de software debe tener una serie de publicaciones, así como los problemas de producción que han encontrado. Esto puede decirle más sobre su habilidad como desarrollador de Android, y su aportación durante el proceso de desarrollo de Android. Si pueden hablar con fluidez y de forma interesante sobre sus experiencias, le dirá mucho sobre su participación en el proceso de creación de aplicaciones Android. Esto debería ir más allá de "mi equipo y yo resolvimos tales y tales problemas". Es importante saber cuáles fueron los problemas que resolvieron y qué aportaron exactamente al proyecto.

¿Qué más se puede saber de un desarrollador de aplicaciones Android a partir de su CV?

  • Busca todo lo relacionado con el lenguaje de programación Java. Talleres, certificados y conocimientos de código y patrones Java. Java es el lenguaje de programación básico de Android. Incluso otros lenguajes de programación que puedan aparecer, suelen estar basados en JVM (concretamente en Android Runtime, ART), por lo que estar familiarizado con todas las limitaciones y normas relativas al lenguaje de programación Java es muy útil.

Examen técnico de las habilidades de desarrollo de Android durante una entrevista telefónica/vídeo

Un currículum vitae puede ofrecerte alguna información básica sobre tu candidato en relación con el desarrollo de aplicaciones móviles, pero puede que no te diga mucho sobre otras habilidades esenciales. Por ejemplo, no es suficiente para proporcionarle un conocimiento sólido de sus habilidades para completar el código.

A continuación encontrará algunos ejemplos de preguntas que le permitirán conocer mejor al candidato en este sentido.

1. Cuéntenos el problema más interesante con el que se encontró tras publicar una de las aplicaciones móviles en las que trabajó. ¿Cómo resolviste este problema?

  • Esta pregunta revela cualquier deficiencia en la experiencia de un desarrollador decente que debería proporcionar toneladas de ejemplos de la parte superior de su cabeza de los problemas que lograron resolver que los hizo orgulloso. Si alguien acaba de participar, puede perderse al responder a la pregunta.

2. Enumerar los componentes listos de Material Design cuyas implementaciones se pueden encontrar en la familia de bibliotecas de soporte

  • La respuesta a esta pregunta pone de manifiesto el conocimiento de la familia básica de bibliotecas que utilizan todas y cada una de las aplicaciones de Android. Un candidato debería ser capaz de enumerar al menos las siguientes: CardView, RecyclerView, Floating Action Button, Toolbar, Navigation Drawer. Si un programador conoce estos componentes, significa que no reinventará la rueda al crear una aplicación clásica, sino que utilizará componentes fiables y ampliamente utilizados de una biblioteca libre.

3. ¿Cuál es tu atajo favorito en Android Studio?

  • La respuesta a esta pregunta muestra hasta qué punto el candidato está interesado en la herramienta que utiliza a diario y hasta qué punto la domina. Un candidato debería enumerar fácilmente al menos 4 o 5 atajos que utiliza a diario. Cuantos más ejemplos den, mejor se reflejará en ellos. Es una mala señal cuando un programador que no conoce los atajos y utiliza el ratón para todo.

4. ¿Qué hay que hacer para que una aplicación Android se congele?

  • Realizar demasiadas operaciones en el hilo principal. La respuesta a esta pregunta pone de manifiesto los conocimientos del candidato sobre la arquitectura de la plataforma. Ser capaz de responder a esta pregunta es una necesidad absoluta. Un candidato que no pueda dar una respuesta no escribirá una aplicación que sea rápida y estable desde el punto de vista de sus usuarios.

5. ¿Cómo se trata la fragmentación?

  • El mercado de teléfonos con Android es el más diverso de todas las plataformas móviles y las aplicaciones de Android siguen siendo las más populares en plataformas como Google Play. Ser capaz de responder a esta pregunta significa que un candidato posee conocimientos sobre el proceso de desarrollo. Sabe lo que ofrece la plataforma Android y tiene los conocimientos necesarios para garantizar la compatibilidad de la aplicación con una versión concreta del sistema, con dispositivos con varias pantallas, etc.

También es una buena idea preguntar sobre la fuente de los proyectos de los desarrolladores de Android, es decir, PSD o proporcionado por un diseñador. ¿Cómo se las arreglan para cortar los gráficos y cooperar con los diseñadores?

Lea el: Datos completos de los salarios de los desarrolladores de Android

Pruebas de aptitud en línea para desarrolladores de Android de DevSkiller, listas para usar

En DevSkiller proporcionamos a las empresas una herramienta que les permite crear sus propias pruebas de programación, en las que pueden poner a prueba las mejores habilidades de los desarrolladores de Android utilizando su propia base de código. Así como proyectos enteros de TI utilizando sus propios frameworks y librerías ideales para evaluar las habilidades de desarrollo de aplicaciones móviles. Sin embargo, también tenemos algunas pruebas de codificación .NET listas para usar que puede utilizar en su campaña de contratación.

Android Studio IDE

Todos los Pruebas de habilidad para desarrolladores de Android disponibles en nuestro catálogo ahora se ejecutan en un IDE de Android Studio calentado, directamente en el navegador del candidato. De este modo, eliminamos el largo acto de tener que configurar el entorno de desarrollo en una máquina local. Los candidatos pueden empezar a codificar tan pronto como abran la invitación a la prueba.

Para utilizar Android Studio para las tareas de programación de Android en el examen DevSkiller TalentScore, los candidatos sólo tienen que seleccionar la opción "Editor en el navegador" cuando lleguen a la sección de tareas de programación en sus exámenes.

Más información sobre nuestra gama de Pruebas de codificación para desarrolladores de Android

Android
JUNIOR
Habilidades probadas
Duración
36 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de Android

Lagunas en el código

evaluando el conocimiento de Android, Kotlin

Tarea de programación - Nivel: Fácil

Android | Kotlin | Compass - Implementar la funcionalidad de la brújula en la aplicación basada en la localización.

Android
MIDDLE
Habilidades probadas
Duración
41 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de Android

Lagunas en el código

evaluando el conocimiento de Android, Kotlin

Tarea de programación - Nivel: Medio

Android | Kotlin | RecyclerView | To-do List - Crear una simple lista de tareas donde cada elemento es un elemento de la lista en el RecyclerView.

Android
JUNIOR
Habilidades probadas
Duración
36 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de Android

Lagunas en el código

evaluando el conocimiento de Android, Java

Tarea de programación - Nivel: Fácil

Android | Java | Reproducción de vídeo - Implementar la reproducción simple de un activo de vídeo incrustado.

Android
SENIOR
Habilidades probadas
Duración
48 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de Android

Lagunas en el código

evaluando el conocimiento de Android, Java, ProGuard

Tarea de programación - Nivel: Duro

Configuración de Android | Java | ProGuard - Implementar la configuración de ProGuard para eliminar el código del desarrollador de la base de código - en tiempo de compilación.

Android
SENIOR
Habilidades probadas
Duración
58 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de Android

Lagunas en el código

evaluando el conocimiento de Android, Kotlin

Tarea de programación - Nivel: Duro

Android | Kotlin, C | JNI Magic - Implementa la funcionalidad JNI que permite llamar al método Base::getBaseComponent teniendo sólo una instancia de Cliente.

Android
MIDDLE
Habilidades probadas
Duración
61 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de Android

Lagunas en el código

evaluando el conocimiento de Android, Kotlin

Tarea de programación - Nivel: Medio

Aplicación Android | Kotlin | Bloc de notas - Completa las funcionalidades básicas de una aplicación para tomar notas utilizando RecyclerView.

Android
SENIOR
Habilidades probadas
Duración
52 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Lagunas en el código

evaluando el conocimiento de Android, Kotlin

Tarea de programación - Nivel: Duro

Android | Kotlin | Manipulación de mapas de bits - Completa aplicación de manipulación de imágenes que realiza algunas operaciones sobre la imagen seleccionada.

Android
JUNIOR
Habilidades probadas
Duración
53 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de Android,

Lagunas en el código

evaluar el conocimiento de Android, Kotlin y Java

Tarea de programación - Nivel: Fácil

Android | Kotlin | Aplicación para empleados - Completa aplicación que muestra una lista de personas responsables de diferentes áreas en la empresa como IT o Nómina.

Android
SENIOR
Habilidades probadas
Duración
45 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de Android

Tarea de programación - Nivel: Duro

Android | API de Vibraciones - Implementa un método para tocar una melodía elegante a través del dispositivo háptico incorporado para indicar que el interruptor de características ha sido activado.

Android
MIDDLE
Habilidades probadas
Duración
39 minutos como máximo.
Evaluación
Automático
Resumen de la prueba

Preguntas de elección

evaluando el conocimiento de Android

Tarea de programación - Nivel: Medio

Android | Kotlin | Animación de ConstraintLayout - Implementa animaciones de elementos de diseño usando la API de ConstraintLayout.

Compartir correo

Más información sobre la contratación de tecnología

Suscríbase a nuestro Learning Hub para recibir información útil directamente en su bandeja de entrada.

Verificar y desarrollar las habilidades de codificación sin problemas.

Vea los productos DevSkiller en acción.

Certificaciones de seguridad y cumplimiento. Nos aseguramos de que sus datos estén seguros y protegidos.

El logo de DevSkiller Logotipo de TalentBoost Logotipo de TalentScore