directohace 2 meses

FullStack Engineer (Flutter + Backend) - LatAm only!

G2IRemoto · Por proyecto
Senior7+ años

Empresa G2I busca FullStack Engineer (Flutter & Backend) con 7+ años de experiencia. Modalidad remota para LATAM.

Por qué aplicar

Aplicá si sos un ingeniero fullstack experimentado que busca un desafío remoto en LatAm.

Descripción del puesto

FULL-STACK (FLUTTER & BACKEND) SENIOR ENGINEER — CONTRACTOR Type: Contract (Month-to-Month, Contract-to-Hire considered) Experience: Senior (7+ years) Stack: Flutter (or React Native) + Go (or similar languages) Work Style: Remote Compensation: hourly rate up to USD 65 WE NEED A MIDFIELDER Si alguna vez has visto un partido de fútbol, sabes que el mediocampo es donde se ganan los partidos. Los delanteros no pueden anotar si la pelota nunca llega a ellos. La defensa no puede mantener si está absorbiendo presión sin alivio. El mediocampista es el jugador que lee el juego, llena los espacios y conecta las dos mitades del campo en un equipo funcional. Ese es el rol que estamos buscando. Nuestra organización de ingeniería tiene ingenieros frontend sólidos y dedicados y backend sólidos y dedicados. Lo que no tenemos suficiente es alguien que pueda jugar en ambos lados de la pelota — alguien que se despierte un lunes y envíe una función de Flutter, luego pivote el miércoles para construir el punto final de la API que la alimenta. Estamos buscando al ingeniero que vea el espacio y lo llene, donde sea que esté. WHAT YOU'LL DO No estarás encerrado en una capa de la pila. En cualquier sprint dado, el trabajo de mayor impacto podría ser: - Construir y refinar la interfaz de usuario móvil en Flutter - Diseñar e implementar servicios de backend en Go o similar - Conectar los dos — API, contratos de datos, gestión de estado a través de la frontera - Saltar a cualquier parte del código base que más lo necesite en este momento La proporción de frontend a backend variará de un proyecto a otro. Algunas semanas vivirás en Flutter. Algunas semanas vivirás en Go. La mayoría de las semanas tocarás ambos. Si eso te parece emocionante en lugar de agotador, sigue leyendo. WHAT WE'RE LOOKING FOR Requisitos: - 5+ años de experiencia en ingeniería de software profesional en cualquier lenguaje o pila. Nos importa la madurez de la ingeniería — cómo piensas en los problemas, no solo qué sintaxis conoces. - Experiencia en producción con Flutter o React Native. Has enviado aplicaciones móviles de las que dependen usuarios reales. Entiendes las realidades del desarrollo móvil: peculiaridades de la plataforma, gestión de estado, rendimiento en dispositivos reales, ciclos de vida de la tienda de aplicaciones. - Disposición y entusiasmo para trabajar en el backend en Go. No necesitas ser un experto en Go hoy, pero necesitas ser el tipo de ingeniero que está genuinamente emocionado — no solo dispuesto — a tomar el trabajo de backend y poseerlo. Flutter / Fortalezas móviles que valoramos: - Fluidez con el modelo de árbol de widgets — piensas en composición, entiendes cuándo usar StatelessWidget vs. StatefulWidget vs. soluciones de estado más avanzadas, y sabes cómo mantener eficientes las reconstrucciones - Experiencia con patrones de gestión de estado en Flutter (Riverpod, Bloc, Provider o similar) — y la capacidad de articular por qué prefieres lo que prefieres, no solo seguir un tutorial - Entendimiento de los canales de plataforma y cómo conectar con código nativo de iOS/Android cuando las abstracciones de Flutter no son suficientes - Comodidad con Dart como lenguaje — patrones async/await, isolates, seguridad de tipos fuerte, seguridad de nulabilidad — no solo « puedo escribir Dart » sino « escribo Dart idiomático » - Experiencia con pruebas en Flutter — pruebas de widgets, pruebas de integración, pruebas doradas — y un sentido práctico de qué vale la pena probar vs. qué es ceremonia - Familiaridad con CI/CD para móviles — pipelines de compilación, firma de código, distribución a TestFlight y Play Console, gestión de sabores/ambientes Go / Fortalezas de backend (agradable tener): - Entendimiento del modelo de concurrencia de Go — goroutines, canales, declaraciones de selección, y la disciplina práctica de saber cuándo la concurrencia ayuda vs. cuándo introduce complejidad innecesaria - Experiencia diseñando y construyendo API — diseño de puntos finales limpios, versión, manejo de errores, y documentación que otros ingenieros (incluido tu yo de frontend) puedan usar en realidad - Comodidad con la biblioteca estándar de Go y modismos — patrones de manejo de errores, interfaces, composición de structs sobre herencia, y escribir código que parezca Go en lugar de Java-en-Go-sintaxis - Familiaridad con la interacción de bases de datos en Go — ya sea a través de un ORM o SQL directo con algo como sqlx o pgx, entiendes el agrupamiento de conexiones, las migraciones, y el rendimiento de las consultas - Experiencia con preocupaciones de observabilidad y operabilidad — registro estructurado, métricas, comprobaciones de estado, y escribir servicios que sean depurables en producción, no solo funcionales en desarrollo - Conciencia de los patrones de implementación e infraestructura — contenerización, pipelines de CI/CD para servicios de backend, configuración de entorno, y los conceptos básicos de ejecutar servicios en entornos en la nube Qué te hace destacar: - Ya has trabajado en toda la pila en roles anteriores y es donde haces tu mejor trabajo - Has trabajado en equipos donde eras la persona que podía intervenir donde el equipo lo necesitaba más - Estás cómodo con la ambigüedad — no necesitas un ticket perfectamente delimitado para ser productivo - Tienes opiniones sobre el diseño de API, la modelización de datos, y dónde debería vivir la frontera entre frontend y backend - Has poseído características desde el esquema de la base de datos a través de la API hasta la IU — y disfrutaste de las tres capas WHAT WE'RE NOT LOOKING FOR - Un especialista de frontend que tolerará el trabajo de backend. Necesitamos a alguien que disfrute genuinamente de ambos lados. - Un ingeniero que necesite que se le diga exactamente qué hacer. Queremos a alguien que vea lo que necesita suceder y lo hace suceder. - Alguien que vea «full-stack» como una palabra clave de currículum en lugar de un estilo de trabajo. HOW WE WORK Pensamos en nuestro equipo como un equipo de fútbol competitivo — no recreativo. Ganar no es un deporte individual, y esperamos que cada jugador de este equipo abrace eso. Hay cuatro comportamientos de equipo que valoramos y incentivamos: El pase — Pones la misión del equipo por encima del crédito personal. Si pasar la pelota a un compañero de equipo significa que el equipo anota, pasas la pelota. No siempre obtendrás tu nombre en el gol, pero el equipo sabe qué hiciste. Estamos buscando ingenieros que prefieran enviar el resultado correcto a reclamar la gloria. La rotación — Cuando un compañero de equipo se mueve fuera de posición para hacer una jugada, rotas para cubrir el espacio. En un equipo de ingeniería, esto significa que si un compañero de equipo está concentrado en una entrega crítica, recoges el trabajo que no puede hacer. No esperas a que te lo pidan. Ves el espacio abierto y lo llenas. El sacrificio — A veces lo más valioso que puedes hacer es el trabajo poco glamuroso — la migración que nadie quiere, el bug que ha estado pendiente, la escalada de llamada en cola durante tu tiempo de enfoque. Los equipos de bajo rendimiento dejan que ese trabajo se pudra. No lo hacemos. Hacemos espacio para el sacrificio y lo reconocemos. La apuesta arriesgada — Fomentamos la toma de riesgos inteligente. Si ves una oportunidad para impulsar las capacidades del equipo más allá de donde han estado, tómala. Preferimos tener un ingeniero que pruebe algo ambicioso y aprenda de un error a uno que juega seguro cada vez. Gestionamos el riesgo a través de la planificación y el apoyo — no evitando. Estos no son solo eslóganes. Dan forma a cómo planificamos, revisamos el trabajo, y evaluamos a las personas de este equipo. Si eres el tipo de ingeniero que está motivado por ganar como equipo, te sentirás como en casa. Si estás buscando un lugar para rellenar un currículum personal, esto no es para ti. AI ES UN COMPAÑERO DE EQUIPO, NO UNA AMENAZA Seremos directos sobre esto: la IA se está convirtiendo en algo fundamental en la ingeniería de software, y estamos inmersos — mucho. Cada ingeniero de nuestro equipo trabaja codo con codo con herramientas de IA como parte de su flujo de trabajo diario. No estamos experimentando con IA. No estamos « explorando las posibilidades ». Hemos invertido en ello, lo usamos todos los días, y esperamos que cada ingeniero de este equipo haga lo mismo. Somos una organización orientada al crecimiento. La IA es un multiplicador de fuerza para nosotros — magnifica el impacto de cada ingeniero del equipo. No estamos usando la IA para reducir personal. Estamos usando para construir más, enviar más rápido, y superar nuestro peso. Los ingenieros que prosperan aquí son los que ven la IA como una herramienta que los hace más peligrosos, no una amenaza a su relevancia. Si estás emocionado por lo que está sucediendo en la IA y quieres trabajar en un equipo que la adopte en lugar de temerla, te sentirás como en casa. Si estás esperando a que la IA « pase », esto probablemente no sea la mejor opción. THE ENGAGEMENT Este es un contrato de mes a mes. Dicho esto, no estamos buscando un relleno de brecha a corto plazo — tenemos años de trabajo de producto por delante y queremos a alguien que esté interesado en un compromiso a largo plazo. Estamos abiertos a contrato-para-contratar para la persona adecuada. INTERESADO? Si esto suena como la forma en que ya trabajas — o la forma en que siempre has querido trabajar — nos gustaría saber de ti. Cuéntanos sobre una vez que jugaste el rol de mediocampista en un equipo. No necesitamos una carta de presentación. Necesitamos saber que has hecho esto antes y quieres hacerlo de nuevo.

Skills requeridas

Atención al clienteGestión de equiposNegociación