Ingeniero de desarrollo de Android: todos quieren ingresar a una gran empresa, entonces, ¿han descubierto la dirección de la entrevista y las rutinas del entrevistador para las grandes empresas?

Hoy les contaré sobre la dirección de revisión de los puestos de ingenieros de desarrollo de Android de nivel medio y superior en grandes empresas:

Android ha sido popular durante muchos años. Ahora, si todavía está involucrado en el desarrollo de Android, son básicamente ingenieros de desarrollo de Android intermedios y superiores. Luego, veamos qué nivel de requisitos tiene el empleador para los ingenieros de desarrollo de Android de nivel medio y superior.

Problema basico

Los entrevistadores generalmente comienzan con lo más simple, como preguntar qué métodos están disponibles para el objeto. Después de responder, el entrevistador continuará preguntando, ¿cuál es el principio de comparación del método de iguales? El principio de hashCode es diferente de los iguales. Luego, consulte los principios relacionados de hashMap en Map.

He preguntado cuáles son los métodos de vista de lista (vista de reciclaje) y el papel de cada método (el método aquí se basará en las preguntas detalladas que respondió anteriormente) y el papel de los parámetros. Cuando se les pregunta sobre esto, algunas empresas preguntan cómo resolver este problema porque hay demasiados dos controles que deben usarse en un proyecto, será muy difícil escribir cada vez y escribir muchas veces.

La respuesta a esta pregunta, puede Baidu. Mi solución general es personalizar un adaptador con genéricos y sin especificar el número de parámetros. Luego defina algunos métodos, para que no sea necesario realizar demasiadas operaciones en el adaptador. El paquete personalizado específico se explicará en detalle en la siguiente publicación del blog. El método del paquete personalizado y el método de aplicación aquí. Por supuesto, animo a todos a que exploren por sí mismos y me dejen un mensaje para que pueda completar esta pregunta.

El segundo problema

¿Cuáles son las bibliotecas de terceros que utiliza con frecuencia? Luego, comience a probar su familiaridad con el código fuente de bibliotecas de terceros, competencia en el uso y capacidades de expansión.

El entrevistador puede preguntar: Si el backend le da un tipo de datos incorrecto, como el front-end, ¿cómo podemos hacer un proceso tolerante a fallas para asegurar el uso normal de la APLICACIÓN (de acuerdo con el documento de interfaz, el back-end es incorrecto, y el front-end debe ser compatible con este tipo de análisis de datos de error).

Esta pregunta también es un problema al que se enfrentan muchas grandes empresas, especialmente las empresas emergentes de rápido crecimiento . En el espíritu empresarial, el personal de front-end y back-end ha cambiado mucho y las necesidades de desarrollo han cambiado significativamente. La API de fondo y las versiones de front-end no se actualizan sincrónicamente, lo que puede causar estos problemas. Por lo tanto, si desea salir, tiene una preparación para la compatibilidad y la tolerancia a errores. (Nota: esta pregunta puede usar genéricos, reflexión. Pero todavía hay ciertos problemas.

En general, este tipo de cuestiones es también el problema que la empresa tiene que resolver con urgencia. Por lo general, el entrevistador que hace este tipo de preguntas no solo hará una de esas preguntas, sino que gradualmente hará este tipo de preguntas y preguntará sobre este tema, por lo que cuando me encuentro con este tipo de pregunta no preparada, no sé cómo. Si lo hace, puede pensar en algunas preguntas antes y después del entrevistador y la dirección de la guía, sintetizar estas preguntas y pensar en soluciones).

algoritmo

A juzgar por la contratación de varias grandes empresas, existen requisitos en esta dirección. Y algunos zapatos para niños realmente hicieron preguntas algorítmicas durante la entrevista. Esto examina principalmente la capacidad de resolución de problemas, la capacidad de pensamiento, si es abierta y activa.

Y este tipo de pregunta tiene dos tipos de métodos de examen. La primera es usar código Java o Android para resolver el problema. En segundo lugar, no necesita considerar cómo implementar el código, sino que depende de su capacidad para analizar y resolver problemas. Por supuesto, el segundo caso es relativamente raro.

Experiencia de desarrollo mixto

Actualmente, esta es una demanda muy popular para los ingenieros de desarrollo de Android. Experiencia de desarrollo híbrido. Ha habido muchas aplicaciones de desarrollo de aplicaciones híbridas exitosas, como Meituan, iQiyi, WeChat y otras aplicaciones móviles conocidas, todas las cuales adoptan el modelo de desarrollo de aplicaciones híbridas.

En la actualidad, la mayoría de las grandes empresas de Internet son en su mayoría aplicaciones puras y basadas en la Web, por lo que la experiencia de desarrollo híbrido es relativamente fácil de encontrar trabajo en la actualidad. Si no tiene este conocimiento, comenzará a recuperarse.

para resumir

Primero: la base de Java, es necesario tener profundidad y conocer el principio.

Segundo: ¿Verifica a menudo el código fuente? ¿Puede encapsular y ampliar algunas bibliotecas de terceros ?

Por ejemplo, listview de uso común, recyclingview, gson, okhttp, marco de carga de imágenes, optimización de memoria, desbordamiento de memoria, sensor (sensormanager), compatibilidad (en dos aspectos, la primera adaptación de la interfaz de usuario (esquema de adaptación de titulares de hoy), la segunda adaptación de rendimiento ( so archivo)).

Tercero: Algoritmo, capacidad de pensamiento lógico.

Esta puede ser una gran empresa que hará algunas preguntas al respecto. Piense por qué. Estructura de datos, se deben escribir varios tipos. Además, eche un vistazo a cómo se realizan algunos de sus algoritmos en aplicaciones comunes y piénselo.

Cuarto: El desarrollo híbrido híbrido (front-end parcial) es actualmente muy popular, estamos a punto de empezar a escribir un proyecto .

Lo simple servirá. Descarga un proyecto de Github y vuelve a escribirlo tú mismo.

Quinto: Muy importante. Hasta donde yo sé, muchas aplicaciones están listas para agregar la función de pequeños videos .

Las aplicaciones de muchas grandes empresas también lo son. Por lo tanto, video y audio, esto debe ser posible. Hay muchos códigos fuente en esta área en GitHub, puedes descargarlos y verlos por ti mismo, no digas que los escribes, al menos necesitas saber qué usar y cómo hacerlo.

fin

Las entrevistas no son más que hacer preguntas como las anteriores. Contratar a un desarrollador de Android de nivel medio a senior les preguntará en profundidad y le pedirá a uno que extienda la segunda. Las siguientes hermanas menores primero plantearon algunos puntos clave, que son las preguntas básicas que deben hacer los entrevistadores. ¡Por favor, asegúrese de entender!

  • Conocimientos básicos:  cuatro componentes principales (ciclo de vida, escenarios de uso, cómo empezar)
  • Conceptos básicos de Java:  estructura de datos, hilo, marco mvc (HttpClient, HttpUrlConnetion), Socket
  • Persistencia de datos  -SQLite, SharedPreferences, ContentProvider
  • Optimización del rendimiento: optimización del  diseño, optimización de la memoria, optimización de la energía
  • Seguridad:  cifrado de datos, ofuscación de código, llamada WebView / Js, https
  • UI -Animación
  • Otros  -JNI, AIDL, Handler, Intent, etc.
  •  Marcos de código abierto -Volley, Gilde, RxJava, etc. (escriba en su currículum que sabe cómo usarlo)
  • Expansión: características de  Android 6.0 / 7.0 / 8.0 / 9.0 / 10.0, idioma kotlin, conferencia de E / S

Si envía su currículum apresuradamente y se apresura a una entrevista, es mejor conformarse con uno o dos días y repasar el contenido anterior nuevamente. Si desea obtener una oferta de forma segura, es mejor comprender el principio de implementación y conocer los escenarios de uso. ¡No regreses! ¡Comprender! El entrevistador está muy cansado de escuchar estos contenidos durante un día, y lo mejor es expresar algunas de sus propias opiniones.

Ruta de revisión del sistema de entrevistas

A veces, la elección es más importante que el esfuerzo y la oportunidad es más importante que la lucha. Sin embargo, las oportunidades solo están reservadas para aquellos que están preparados. Solo cuando estemos siempre preparados podremos aprovechar la oportunidad cuando se presente.

Aquí para compartir con ustedes mi ruta de revisión de la entrevista , los amigos que lo necesiten pueden consultar:

1. Vea el video para el aprendizaje sistemático

La experiencia de Crud en los últimos años me ha hecho darme cuenta de que realmente soy un luchador en el novato. También es por Crud que mi tecnología está relativamente fragmentada y no lo suficientemente profunda para ser sistemática, por lo que es necesario volver a estudiar . Lo que me falta es conocimiento del sistema, un marco estructural e ideas deficientes, por lo que aprender a través de videos es mejor y más completo. Con respecto al aprendizaje por video, las personas pueden recomendar estudiar en la estación B. Hay muchos videos de aprendizaje en la estación B. El único inconveniente es que son gratuitos y fácilmente obsoletos.

2. Clasificar sistemáticamente los conocimientos y mejorar las reservas

Hay tantos puntos de conocimiento en el desarrollo del cliente y todavía hay tan pocas cosas en la entrevista. Por lo tanto, no hay otros trucos para la entrevista, solo para ver qué tan bien se prepara para estos puntos de conocimiento. Entonces, cuando salga a una entrevista, es bueno ver qué etapa ha alcanzado en su revisión.

Dirección de aprendizaje del sistema:

  • Habilidades esenciales para arquitectos: genéricos Java en profundidad + anotaciones en lenguaje simple + programación concurrente + transmisión y serialización de datos + principios de la máquina virtual Java + reflexión y carga de clases + proxy dinámico + E / S eficiente

  • IU avanzada de Android y código fuente de FrameWork: promoción de IU avanzada + análisis del kernel de Framework + kernel de componentes de Android + persistencia de datos

  • Ajuste de rendimiento general de 360 °: ideas de diseño y optimización de la calidad del código + optimización del rendimiento del programa + optimización de la eficiencia del desarrollo

  • Interpretación de ideas de diseño de marcos de código abierto: diseño de reparación en caliente + interpretación del marco de complementos + diseño del marco de componentes + marco de carga de imágenes + diseño del marco de acceso a la red + diseño del marco de programación adaptable RXJava + diseño de la arquitectura IOC + componente de arquitectura de Android Jetpack

  • Desarrollo del módulo NDK: sistema de conocimiento básico NDK + procesamiento de imágenes subyacentes + desarrollo de audio y video

  • Mini programa WeChat: Introducción al mini programa + Desarrollo de interfaz de usuario + Operación de API + Acoplamiento de WeChat

  • Desarrollo híbrido y Flutter: Html5 project combat + Flutter advanced

Una vez que se han resuelto los conocimientos, es necesario comprobar los puntos que faltan, por lo que para estos puntos de conocimiento he preparado muchos libros electrónicos y notas a la mano. Estas notas proporcionan un resumen perfecto de cada punto de conocimiento.

3. Lea el código fuente, lea las notas de combate reales y aprenda las ideas de Dios

"El lenguaje de programación es la forma en que el programador se expresa, y la arquitectura es la percepción del mundo que tiene el programador". Por lo tanto, si los programadores quieren comprender y aprender rápidamente la arquitectura, leer el código fuente es esencial. Leer el código fuente es resolver problemas + entender cosas y, lo que es más importante: ver las ideas detrás del código fuente; los programadores dicen: lea miles de líneas de código fuente y practique miles de formas.

4. La víspera de la entrevista, preguntas rápidas

Una semana antes de la entrevista, puede comenzar a correr. Tenga en cuenta que al responder preguntas, la tecnología es la primera prioridad y el algoritmo es básico, como la clasificación, etc., y las preguntas intelectuales, a menos que sean reclutas de la escuela, generalmente no se hacen.

Con respecto a las preguntas de la entrevista, personalmente preparé un conjunto de preguntas de entrevista sistemáticas para ayudarlos a aprender unos de otros:

El contenido anterior es gratuito para compartir con todos, amigos que necesitan la versión completa, haga clic aquí para ver todo el contenido .

Supongo que te gusta

Origin blog.csdn.net/weixin_44339238/article/details/112205948
Recomendado
Clasificación