Ingreso a TI: experiencia de desarrollador nigeriano



A menudo me hacen preguntas sobre cómo comenzar una carrera en TI y, en primer lugar, mis compatriotas son nigerianos. Es imposible dar una respuesta universal a la mayoría de estas preguntas, pero sin embargo, me parece que si describo un enfoque general para el debut en TI, esto puede resultar útil.

¿Tengo que poder escribir código?


La mayoría de las preguntas que recibo de aquellos que quieren ingresar a TI en Nigeria se relacionan específicamente con la capacitación en programación. Creo que la razón radica en dos circunstancias:

  • Yo también soy desarrollador, por lo que es bastante lógico que la gente esté buscando mi consejo sobre temas relevantes.
  • Trabajar con código es la oportunidad profesional más atractiva en TI hoy, al menos aquí. Mucha gente piensa que no hay otras opciones además de ella. Agregue combustible al fuego y al hecho de que los programadores y sus gerentes tienen los salarios más altos de la industria en todo el mundo.

En mi opinión, es importante darse cuenta de que no es necesario tomar el código y esforzarse por convertirse, en el sentido común, en un "técnico". Soy de la opinión de que cualquiera puede dominar la programación y hacerlo profesionalmente con la debida diligencia, pero tal vez simplemente no la necesite.

Hay muchas otras carreras profesionales en TI que vale la pena considerar también. A continuación expresaré mis pensamientos sobre algunos de ellos y analizaré cuán prometedores son desde el punto de vista de una persona que vive en Nigeria.

Esta no es una lista completa de profesiones alternativas que no están directamente relacionadas con la codificación. Sin embargo, también hablaré sobre mi experiencia como programador; si vino aquí para esto, vaya a la sección "¿Qué pasa con la programación?".

Opciones para trabajar como no programador


Diseño

El diseño es un concepto bastante amplio en TI, pero generalmente cuando las personas me hacen preguntas sobre el diseño, se trata de UI o UX. Estos dos aspectos también incluyen una amplia gama de fenómenos: todo lo que se aplica a ellos se relaciona con las sensaciones visuales, táctiles e incluso auditivas que surgen al interactuar con un producto.

En organizaciones grandes, especialmente aquellas con un ecosistema de tecnologías bien desarrollado, las tareas de UI y UX se dividen en especialistas específicos. Algún diseñador, generalmente comenzó como un vagón, solo es responsable de los iconos, otro solo se ocupa de la animación. Este grado de especialización no es característico de Nigeria: la industria aún no ha alcanzado la madurez necesaria para su difusión. Aquí lo más probable es que encuentre generalistas que realicen cualquier tarea relacionada con UI y UX.

De hecho, incluso los diseñadores que trabajan en combinación con el front-end no son infrecuentes. Pero ahora la situación está empezando a cambiar. Cada vez más empresas se están volviendo lo suficientemente exitosas como para permitirse contratar especialistas, por lo que equipos completos trabajan en el diseño de productos. Basado en lo anterior, solo dominar la profesión de diseñador y limitarnos a esto es una estrategia completamente funcional para construir una carrera en el mercado nigeriano.

Gestión de proyectos

Se necesitan gerentes de proyecto en casi cualquier campo de actividad, por lo que puede intentar utilizar la experiencia y el conocimiento adquiridos en otra industria para tener éxito en TI. Por supuesto, debe tener en cuenta que algunos de ellos resultarán irrelevantes, sin mencionar el hecho de que el gerente debe comprender los detalles técnicos del proyecto que lidera. Pero si cree que es bueno en la gestión de personas, en el diálogo y en la elaboración de esquemas de trabajo efectivos, considere esta opción.

Marketing y desarrollo de negocios.

El desarrollo empresarial también es un concepto muy vago. En las empresas de tecnología, los empleados participan en él, asegurándose de que el proyecto muestre algún tipo de crecimiento, ya sea un aumento en la cantidad de suscriptores, la cantidad de pedidos, vistas de anuncios o cualquier otro indicador que refleje el valor central que conlleva el producto. En este proceso intervienen una gran variedad de habilidades: promoción de productos, diseño, recopilación de estadísticas, comunicación verbal y escrita, gestión de proyectos, etc.

Soporte al usuario

Es menos probable que este rol atraiga la atención de las personas que buscan desarrollar una carrera en TI. Atribuyo esto al hecho de que, en general, las personas que trabajan en apoyo en áreas no relacionadas con la tecnología reciben poco. A su vez, este hecho es un subproducto del hecho de que las organizaciones nigerianas no le dan mucha importancia a ayudar a los clientes y no invierten en él: la máxima " salir de alguna manera " está firmemente arraigada en nuestra cultura.

Sin embargo, recientemente comencé a notar que la actitud hacia el apoyo y la inversión en él comenzó a cambiar, al menos, este cambio se observa en el ecosistema tecnológico. Las empresas jóvenes se dieron cuenta de que los nigerianos podrían obtenerlo, pero es mejor y más rentable que una empresa brinde a los clientes la máxima asistencia posible. Pero incluso si dejamos de lado esta tendencia, en la siguiente sección mencionaré una razón más por la que debería pensar en una carrera en soporte técnico y otras áreas relacionadas.

Yendo más allá del mercado nigeriano


La gran ventaja que nos brinda Internet es que borra las fronteras entre países, al menos en lo que respecta al trabajo y la cooperación. El hecho de que pueda exportar sus habilidades en todas estas áreas (y muchas no incluidas en la lista) trabajando de forma remota significa que no estamos limitados por la demanda de diseñadores, trabajadores digitales y gerentes en Nigeria.

Hay varias formas de ingresar al mercado internacional:

  • Trabajo remoto en freelance. Hay plataformas que se crearon para este propósito específico: Toptal , Gigster , Upwork y otras. Yo mismo he trabajado en Gigster por más de dos años. Muchos otros especialistas de Nigeria trabajaron allí, no solo desarrolladores, sino también gerentes de proyectos y diseñadores.
  • Trabajo remoto por un día completo. Las empresas emergentes están dispersas por todo el mundo, cuyos fundadores buscan personas sin tener en cuenta los factores geográficos. Esto se indica claramente en sitios de trabajo como Remoto | OK .
  • Salida del pais. Desde mi punto de vista, esta es la forma más difícil, al menos en nuestro estado. Viajar al extranjero no es una tarea fácil para nosotros, considerando cuánto necesita rehacer y pagar para obtener una visa y permiso para vivir en el extranjero, especialmente si el país no es africano. Pero hay una ventaja: fuera de África, en principio, no puedes esforzarte. En Sudáfrica, Kenia, Ghana y otros países, hay suficientes empresas interesadas en contratar. Sin embargo, debemos admitir: fuera del continente, tanto la demanda como los salarios son más altos.

Elijo el trabajo remoto para mí por dos razones:

  1. Esto es casi ideal tanto para el empleador como para el empleado. Un empleado generalmente tiene esta línea de pensamiento: "Durante dos años estudié en Internet todo lo relacionado con el soporte técnico, y me ofrecen 25,000 naira". Por otro lado, un empleador que está a miles de kilómetros de distancia aprecia sus habilidades y está dispuesto a contratarlo por razones financieras, lo que probablemente le costará menos que el trabajo de las personas de su propia región. No suena muy bien, pero en realidad no da tanto miedo. Los valores absolutos no siempre dan una idea de cómo el nivel salarial afecta la calidad de la vida humana. Es necesario considerar el costo de vida en las regiones respectivas. Puede ser más rentable ser un desarrollador con un salario de $ 40,000 en un sitio remoto en Ibadan que ganar $ 100,000 y vivir en San Francisco.
  2. Si gana dinero en otra moneda y lo gasta en Nigeria, entonces beneficie a la economía local.

¿Pero qué hay de la programación?


Aquí la pregunta más urgente es: "¿Qué estudiar exactamente?" Las palabras "escribir código" cubren tanto que es difícil no confundirse por la noche y no sentirse sobrecargado de información. Existen muchos lenguajes de programación y herramientas que se pueden usar de varias maneras. Para los principiantes, y aún más para las personas autodidactas, generalmente parece que están siendo despedidos por todos lados.

“Master JavaScript, simplemente no lo confunda con Java, aunque Java también sería bueno si desea trabajar con el lado del servidor en Android, sin embargo, JavaScript también es adecuado para el lado del servidor y Android, pero fue diseñado originalmente para navegadores. También necesitará HTML, CSS, Python, Bootstrap (pero Bootstrap no es bueno ... ¿o no?) React, Vue, Rails, PHP, Mongo, Redis, C incrustado, Machine Learning, Solidity, etc. "

La buena noticia es que se puede evitar tal confusión. El año pasado, escribí una guía explicando los conceptos más básicos (cómo el backent difiere de la interfaz y el lado del cliente del servidor) que suena muy a menudo entre los programadores, al menos aquellos involucrados en el desarrollo web o aplicaciones móviles.

Aquí hay un par de consejos:

1. Piensa en qué producto te gustaría crear. Será más fácil entender qué debe dominar exactamente si intenta imaginar el resultado final. Es posible que desee saber cómo hacer una aplicación de Android para el control de costos. Es posible que haya pensado en lo genial que sería escribir código para su blog personal en lugar de las soluciones preparadas de WordPress o Medium. O tal vez no esté satisfecho con la apariencia y el funcionamiento de los bancos en línea en este momento.

No importa que alguien ya haya logrado lo que usted estableció como su objetivo. No importa que nadie más lo use además de ti. No importa que la idea en tus ojos parezca tonta o poco realista. Esto es solo para obtener su punto de partida. Ahora puede ir a Google y calificar "cómo escribir código para el blog".

Otra opción para encontrar un punto de partida es pensar exactamente en lo que le gustaría convertirse. "Quiero hacer aprendizaje automático". "Quiero ser un desarrollador de iOS". Esto también le dará una redacción que puede buscar en Google: "cursos de aprendizaje automático".

2. Desarrollo fraccional del material. Los primeros pasos desde el punto de partida también dejan una sensación de completa confusión. La razón es que crear un blog desde cero, por ejemplo, requiere el conocimiento de varios idiomas y herramientas. Pero al principio, esto no debería molestarte.

Continuemos con el ejemplo del primer párrafo. Entonces, califiqué en Google "cómo escribir código para un blog" y me topé con un artículo con mil palabras, incluidos términos como HTML / CSS, JavaScript, SQL, etc. Comienzo tomando la primera palabra que no entiendo y empiezo a buscar información a través de consultas en el espíritu de "qué es HTML y CSS", "aprender HTML y CSS".

3. Entrenamiento enfocado. Enfoque Deje todo lo innecesario a un lado por ahora y comience desde lo más básico. Familiarízate con el concepto de HTML y CSS (o lo que sea que tengas) tan a fondo como puedas, hasta que sientas que lo has descubierto. Estudiar los comienzos puede ser difícil, porque no entiendes cómo se aplica todo esto en la práctica. No te detengas. Con el tiempo, todo se aclara.

Una vez que haya terminado con el primer término incomprensible, puede pasar al siguiente, y así sucesivamente hasta el infinito. Este proceso nunca termina.

Aprendiendo a aprender


Entonces, decidiste probar suerte en TI. Ahora queda por entender cómo sortear algunos cuellos de botella:

  • Encuentre tiempo para capacitación y recursos con materiales
  • Para hacer frente al factor de Nigeria, es decir, todas nuestras imperfecciones, por lo que cualquier acción se vuelve cincuenta veces más difícil
  • Obtenga el dinero que planeamos quemarlo todo

Francamente: no tengo respuestas completas para cada ítem. La cuestión de los recursos es particularmente grave porque ... bueno, estamos en Nigeria. Si quiere globalizarse, sus condiciones son mucho peores que sus competidores. La mayoría de los locales ni siquiera tienen acceso a una computadora, suministro de electricidad ininterrumpido y un Internet estable. Personalmente, no tenía los tres cuando comencé mi carrera, y al mismo tiempo, la situación estaba lejos de ser la peor.

La mayoría de los recursos que enumero a continuación se relacionarán con temas de programación; en esto soy muy inteligente. Pero sitios similares son fácilmente buscados en Google para otras áreas que fueron discutidas.

Internet es tu todo


Si ya tiene acceso permanente a Internet o puede permitírselo fácilmente, entonces todo está bien. De lo contrario, use el tiempo cuando acceda a la Web, al máximo. Esta no es una opción ideal, principalmente porque le priva de la oportunidad de encontrar respuestas inmediatas a las preguntas, pero en su mayor parte puede practicar escribir código sin conexión después de descargar los programas y materiales de capacitación necesarios.

Cada vez que tuve la oportunidad de conectarme en línea (por ejemplo, en la oficina donde hice la pasantía, o en ese banco cerca del albergue de estudiantes de posgrado de la Universidad de Lagos, donde puedes encontrar wifi), hice lo siguiente:

  • Descargué todos los archivos necesarios para instalar y configurar programas
  • Descargué libros, documentos PDF, videos tutoriales, que luego estudié sin conexión
  • Páginas web guardadas. Si ve un tutorial que no tiene tiempo para ver sobre la marcha, guarde toda la página web en su computadora. Recursos como freeCodeCamp proporcionan repositorios con un conjunto completo de materiales.

El tráfico móvil se ha convertido para mí en uno de los principales gastos. Adminístrelo adecuadamente, especialmente si planea entregar wifi a su computadora; esta es una habilidad que necesita desarrollar. Afortunadamente, en los últimos años, los precios del tráfico se han reducido.

¿Pero tendré que pagar por libros, tutoriales y cursos?

De hecho, no. Hay toneladas de recursos gratuitos en la web. Codecademy ofrece un plan gratuito. En Udacity, todos los cursos, excepto el nanoescala, no tienen valor. Muchos de los pagos recargados en Youtube. Coursera y Khan Academy también tienen suficientes materiales gratuitos. Y estos son solo algunos de los miles de recursos disponibles en Internet.

Debemos admitir: el contenido pago es a menudo de mayor calidad. Ahora, por supuesto, dejé de aprobar esto de manera oportuna, pero una vez pirateé libros y videos para los que no había suficiente dinero.

Y finalmente, la herramienta más poderosa a su disposición es Google. Apenas toqué la punta del iceberg de recursos que se pueden encontrar allí. Solo busque lo que necesita, y lo más probable es que esté allí.

Código y diseño: solo computadora


Si ya tienes uno, entonces genial. Si no, tendrá que tener cuidado para obtenerlo. Pero hay buenas noticias: al principio no necesitará nada demasiado engañado, especialmente si planea participar en el desarrollo web. Estas características son bastante adecuadas:

  • Procesador de 1,6 GHz
  • 4 GB de RAM
  • Disco duro de 120 GB

Algo como esto se puede comprar en algún lugar por 70,000 naira, incluso más barato si compra con él. Y no, no necesitas un macbook.

Hace unos seis años, estudié el desarrollo de WordPress, y para esto tuve que pedir prestado el portátil HP de un amigo casi todos los días. Aprendí de memoria qué días y horas tiene clases en la universidad y cuándo se acuesta, solo podía usar una computadora en ese momento.

Por supuesto, estas recomendaciones no son adecuadas para todos: alguien no podrá diseñar 70,000 naira a la vez, alguien no tiene amigos con una computadora portátil y no desea pedirla prestada. Pero es fundamentalmente importante encontrar al menos alguna forma de acceder a la computadora.

Si no planea trabajar con un diseño o código, entonces un teléfono inteligente es una excelente alternativa para aprender los temas correctos. Pero, por supuesto, es más conveniente con una computadora.

Si su computadora aparece solo periódicamente, entonces puede utilizar aplicaciones móviles con las cuales es muy conveniente asimilar información sobre la marcha. Muchos de ellos brindan la oportunidad de estudiar sin conexión.

  • Codecademy Go , Py son buenas opciones para aprender código en modo móvil.
  • Google ha lanzado una buena aplicación de Primer que puede ayudarlo a desarrollar sus habilidades de marketing digital
  • KA Lite es una aplicación que te permite ver videos de Khan Academy sin conexión.

Estoy seguro de que, si te ves mejor, esta lista se puede ampliar.

Donde buscar ayuda


No es necesario superar todas las dificultades en la soledad. Aquí hay algunos recursos para ayudarlo a aprender:

  • Andela : la plataforma Andela prepara a profesionales de clase mundial, sin dejar de pagarles. La duración del programa es de cuatro años, y durante este tiempo no solo estudiarás, sino que también harás productos reales para empresas de tecnología de todo el mundo, lo que brinda una experiencia muy valiosa.
  • Piloto de Lambda School Africa : La escuela Lmyabda prepara en nueve meses a desarrolladores expertos que encuentran trabajo instantáneamente, y no te quitarán naira hasta que llegues a algún lado. Ahora Lambda está disponible en África ; Paystack, BuyCoins (trabajo aquí), Cowrywise, CredPal y otras compañías locales cooperan con la escuela. El primer set ya está cerrado, pero el año que viene, estoy seguro de que anunciaremos uno nuevo.
  • Beca de IA . El famoso desarrollador front-end y cofundador de mi compañía BuyCoins, Ire Aderinokun , paga a cada mujer por cualquier curso de nanoescala en Udacity. Esto es especialmente tentador porque su programa no se limita a la programación: también hay disciplinas comerciales digitales y de otro tipo. Ahora no se aceptan solicitudes, pero se está trabajando en la preparación de la segunda iteración.
  • Resplash : un programa gratuito donde las mujeres aprenden programación bajo la guía de mentores. Aquí puede aprender no solo a trabajar con el código, sino también a crear nuevas empresas y administrarlas con el apoyo de fundadores experimentados.

Otros consejos


  • Tómese el tiempo para aprender y practicar todos los días.
  • Busca activamente lo que necesitas. En algún lugar de Internet definitivamente lo es. Entonces mira.
  • Si la electricidad a menudo se apaga, aumente al máximo su capacidad de administrar las baterías de su teléfono y computadora. Todavía me mantengo en la carga lo antes posible: estoy tan acostumbrado a los pensamientos paranoicos que cuando llegue a casa, puede que no haya luz.
  • Una vez que llegue a un nivel en el que no pueda dudar de su capacidad para dominar los conceptos y temas, intente encontrar un trabajo bajo un contrato, lo hará entender hasta el final. En esta etapa, realmente no importa cuánto le paguen, considere cualquier dinero como un bono agradable.
  • Sal a la luz. Que la gente sepa que hablas en serio. Esto se puede lograr de varias maneras: crea un sitio web personal, entabla conversaciones con otros desarrolladores, únete a grupos en las redes sociales, escribe publicaciones en el blog.
  • No te rindas.

Source: https://habr.com/ru/post/464753/


All Articles