Habilidades de simulador, depuración y PRs iniciales seguros para ingenieros nuevos en Expo SDK 57. La mentoría móvil falla cuando los junior luchan contra Metro el tercer día mientras los senior esperan velocidad de características - estructura deliberadamente las primeras dos semanas.
Tarjeta rápida de referencia para mentores - asigna compañero + hitos.
Hitos de la Semana 1: Día 1 Metro verde + expo-doctor (iPhone 16 + Pixel 8 emu) Día 2 Pequeño UI PR fusionado (subtítulo, test, capturas de pantalla) Día 3 Rastrea una característica: app/ ruta → features/ pantalla → hook Día 4 Arregla un comentario de revisión de lint/a11y con verificación de TalkBack Día 5 Instala preview EAS build en dispositivo personalTipos de PR inicial seguro: ✅ Copia, espaciado, RNTL test, accessibilityLabel ✅ Nueva pantalla detrás de patrón de pestaña existente (el compañero revisa la ruta) ⚠️ Nuevas dependencias npm (revisión de compañero + líder) 🚫 Solo app.config.ts / eas.json / config plugin / módulo nativo
# El mentor ejecuta esto con el aprendiz el día 1npx expo-doctornpx expo start# Presiona i → iOS Presiona a → Android# Shift+I / Shift+A → elige dispositivos estándar del equipo
Cuándo recurrir a esto:
Contratación de desarrolladores React web para equipos móviles.
Pasante o graduada de bootcamp uniéndose a mitad de sprint.
# Nombres de dispositivos estándar del equipo (documenta en CONTRIBUTING.md)xcrun simctl list devices available | grep "iPhone 16"# Android: Pixel 8 API 35 en AVD Manager
1. Lee el redbox / LogBox - mensaje completo, archivo, línea2. React DevTools - props/estado incorrectos vs diseño incorrecto3. Terminal de Metro - errores de transformación / resolución4. npx expo-doctor - sesgo de versión5. eas build preview - reproduce fallas exclusivas de nativo6. Registros de Xcode / Android Studio - último recurso; solo emparejar
// Error común de junior - demo de arreglo del mentor// ❌ renderItem inline invalida el memo de lista<FlashList renderItem={({ item }) => <Row item={item} />} ... />// ✅ Nivel de módulo o useCallbackconst renderItem = useCallback(({ item }: { item: Item }) => <Row item={item} />, []);
Empareja en el primer error de Hermes undefined is not a function - enseña npm why <pkg> e higiene de lockfile, no limpiezas de caché aleatorias.
"Funciona en mi máquina" - Junior usa Expo Go; la app necesita cliente de desarrollo. Arreglo: Claridad de README del día uno; preview build antes del día cinco.
Lanzar junior en hotfix viernes - Sin alfabetización de reversión. Arreglo: Hotfixes monitoreados; primera corrección solo es OTA de lunes con plantilla.
Críticas de revisión sin enseñanza - Comentarios de estilo sin "por qué" no construyen juicio móvil. Arreglo: Un comentario de enseñanza por revisión (a11y, perf, o límite).
Saltando Android - Hábito solo de iOS en base de usuarios mayoritariamente Android. Arreglo: Capturas de pantalla requeridas en ambas desde la semana uno.
El pensamiento de componentes, hooks y mentalidad de prueba se transfieren. Nuevo: Metro, simuladores, límites nativos, reloj de lanzamiento de tienda, servicios a11y de plataforma.
¿Qué tan prácticos deberían ser los mentores?
Empareja en días 1-5 para entorno y primer merge; revisa con comentarios de enseñanza semana 2-4; delega características acotadas por semana 3-6 si capstone se fusionó.
Redirige a módulos Expo SDK primero. Nativo personalizado es competencia mid+ a menos que se contrate como ingeniero de plataforma - ver Compensaciones de Nativo vs JavaScript.
¿Qué pasa si el compañero está demasiado ocupado?
El líder asigna compañero alternativo para revisiones dentro de 24h; no dejes el primer PR inactivo - mata la confianza.