Skip to content
Career & LeadershipCarrera y liderazgo

5 Myths about a Software Developer job you should stop believing5 mitos sobre un puesto de desarrollador de software que deberías dejar de creer

ByPor David Cruz Anaya, Senior Mobile & Applied AI Engineer (Android, Kotlin Multiplatform, product AI)Ingeniero sénior de móvil e IA aplicada (Android, Kotlin Multiplatform, IA de producto)

Updated 25 January 2026Actualizado el 25 de enero de 202610 min read10 min de lectura
AndroidMobile DevelopmentKotlinSwiftiOS
5 Myths about a Software Developer job you should stop believing
Share:Compartir:

In 2014 I had the huge privilege of starting my career in software development as a Junior Game Developer coming from a ZERO commercial experience background, and later as an Android and iOS/tvOS developer.

During all my years of experience, I saw people chasing any role in this field, others stuck in the same role feeling unsatisfied, and others with a bright career spreading misconceptions. What they had in common was preaching a few myths, for different reasons.

I do not know why each of them treated those myths as the only truth. It may be true for some people. It is not the likely case for everyone.

I am not claiming to have the unquestionable truth, but if it happened to me once, chances are you can experience the same.

Here are 5 of the myths you should stop believing if you pursue a career in software, mobile app, web development, and so on…

Developer career myths concept illustration

1. You MUST have a degree

A degree is not a must-have. Someone with no degree, a good attitude, and a passion for the job can take an online course, practice, and reach a level that gets them hired.

I am not saying a degree is useless or a waste of time and money, it requires a lot of hard work, study and discipline to achieve it, and even more if you would like to have it with good marks.
If you have one I do honestly admire you, chapeaux.
However, some people who discover later the passion for this job can be part of a development team and achieve the same good results.

My opinion is:
The degree gives you a good ground level and foundations to be a developer or software engineer, but at the same time, if you are one of the lucky ones to have one degree and/or a master, you should not feel superior or even undermine your future co-workers who most probably will have no one of them. However, my most sincere congrats if you have one.

My Example is:
In one of my previous roles, I did work with someone who was a software engineer for several years with a degree and someone who had one year of commercial experience where his previous role was as a cashier in a well-known supermarket here in the UK. Both were brilliant in their respective role and make an amazing team together.

2. You MUST start in a graduate or internship role

Not the case at all, I would like to use my own experience as an example.
In the past, I did work in ambulances in London doing patient transport, and High Dependency transport with Blue-Lights.

London ambulance representing previous career before software development

However, I did always have a bit of time to learn more about coding which is my passion and hobby since a very young age. I must say, I didn’t expect or was looking for a role in programming until a recruiter called me about a junior role as a game developer, which I decided to give a go.

Why not, right?

I did the interview and got a positive response after a few days.

Until today I do not know what they saw in me to give me a chance as a junior game developer coming from an Ambulance job but, I will be always grateful for that and I tried every day to show my appreciation with hard work.

However, if it wasn’t for my small portfolio and attitude I do not think I would pass the interview, and then my willingness to learn, loads of extra time invested into performing better at my job and continuous hard work I would not pass the probation period.

Motivational quote about hard work and proving yourself

What I really try to say is:
“ Work hard, prove yourself to be good, and trust that someone will give you that chance you deserve. ”

I started with no experience as a Junior, others started in a graduates program, others started in an internship role, others by creating their apps, selling apps in codecanyon.com, teaching on different e-learning online platforms… Doesn’t matter where you start but, please, start.

The earlier you do, the better.

3. You MUST need commercial experience to be a contractor

While I am not the best example as a contractor, the fact is I learned a lot from different contractors I worked within the past, especially I would like to name one, RobJ, which is not only one of the most talented Android devs contractors I worked and learned from but also as a person and a good example as what a contractor is, He is also running an amazing podcast Coffee & Coding. You can find more on his podcast following this link.
Check out episode number 5 from the first season > link
Where they discussed:
• How to stand out as a candidate
• How to better work with recruiters
• Why some senior roles are severely underpaid

In one of the podcasts he mentioned, the difference between a permanent and a contractor is “the income” and I do agree, but I will add also, maybe the stability.

As a contractor I would say, commercial experience helps, but the companies I have seen want a contractor for a specific task, for 1, 3, 6, or 12 months (I have rarely seen a longer one). But, for example, If a company of a mobile app that shows hairdressers to make bookings is looking to add Google maps to display all of them, then, You as a contractor with no commercial experience with apps released and pet projects to prove yourself to be good at google maps implementation and building well-structured apps, can get the job as easier than someone who has experience in building apps in general without or little google maps knowledge. Of course, your daily rate will be lower and that is an extra point.

You can get the job with no commercial experience. It is still better if you already have apps on the Google Play Store or the iOS App Store, pet projects on GitHub or GitLab, and you can pass a technical interview.

If you want a first role, starting as a contractor may be a good option.

4. You MUST stick to a single programming field if you want to be good at it.

While is true the fact that expending all of your time and or resources on a single topic or field can expand your knowledge faster in that single thing than multi-tasking, the fact is you can be very good in one field and good enough in another. in the same way you can be good at programming, cooking, and playing instruments at the same time. Your dedication and practice will be key.

For example, I currently work as an Android developer within one of the most amazing teams of talented Android developers I have the pleasure to work with. However, in the past, I did work also as a Javascript Game developer and iOS/TvOS developer.

Multi-tasking is not ideal for everyone. It depends on the person. It fits if you love programming in general.

Giving a real-life example, By knowing how to code in Swift for iOS the transition from Java to Kotlin to develop Android apps was way easier, and right now I can easily read code in multiple languages bringing the knowledge to the technology I working on that moment.

Is not the first time (or will be the last) that I worked on a specific feature as an Android developer where the iOS developer team has already achieved the same task and I use their code to do the same changes in Android and vice-versa.

Being able to code in different fields is good, but do not force yourself to do so as is not required. Get full knowledge of the one you like most first. If one day that is not enough, or you have more time, jump into a second one.

5. Every programming language is the same

At some point in our journey we hear someone say:

“ Switch between programming roles is easy, you just need to learn the new syntax and you should be good to go”

or

”Once you know one programming language then you know all of them”

That sentence is not 100% incorrect if you just looking to know the different syntaxes, but you need way more than to know how a function and a variable is used in a specific language to be able to work efficiently or to even find a job in that field.

Concepts of “How to write Clean Code”, “how to write testable code”, “how to test your code”, “Which architectures I can use to make more sense”, “How to debug”, “new trending tools/libraries”, and more… Syntaxis is only the first step of the journey.

There are no predefined steps for every journey, and also, every person is different.

If you are looking to start to learn something new, ask yourself if it is worth it, find first if the long term goal will compensate the thousands of hours you will expend learning it. Do not become a “Jack of all trades, master of none”.

Recommendations:

If you pursue a role in this field as a developer, software engineer,… (with a degree or not) there is a lot of free resources you can use such as:

  • freecodecamp.org and its YouTube channel you can find in this link for English or this other link in any other language (Spanish, Hindi…).
  • Udemy also offers a wide range of paid and free courses, to get a foundation and some knowledge.
  • Udacity offers paid and free courses, and tests you with quizzes and activities
  • davthecoder.com I have also a free online academy where I create courses for Android developers. Alternatively, my courses can be found in Udemy and Skillshare or my youtube channel
  • Edx.org is an Online Learning platform where you can find free learning courses and material in many fields, not only as a software engineer

besides this recommendation I would like to give you a few tips if you would like to be successful in the long term:

  • Keep learning. As much as you can, without giving up your social life.
  • Teach what you know and learn from others as much as you can. It is free.
  • Do not show pride. Seriously nobody likes to work with a self-proclaimed perfect dev unable to recognise when is wrong made up arguments to prove his “knowledge”.
  • Be open-minded. Maybe other dev can teach you something you do not know and vice versa.
  • Do not be afraid to ask for help when you need it. Nobody will ever expect you to know everything, also by doing so, you will get the trust of coworkers and/or developers as they will see you as sincere and trustworthy.
    If you do not know, you do not know, full stop, do not make excuses.
  • When you get blocked keep in your mind that in programming all is possible. you just need to find the way and learn from it.
  • Acknowledge your limitations and expand them.
  • Enjoy the journey.

If you have any questions, suggestions or would like to share your experience, please leave a comment.

Do not forget to follow me in Medium.
And of course clap this article

Happy Coding!
David Cruz paglipat.com

Let’s Keep in touch:
davthecoder Web: https://www.davthecoder.com
Medium Blog: https://davthecoder.medium.com/
Twitch: https://www.twitch.tv/davthecoder
GitHub: https://github.com/davthecodercom
Instagram: https://www.instagram.com/davthecoder
Twitter: https://twitter.com/davthecoder
Youtube: https://youtube.com/@davthecoder
Support me on Patreon! https://www.patreon.com/davthecoder


En 2014 tuve el enorme privilegio de empezar mi carrera en el desarrollo de software como desarrollador júnior de videojuegos, viniendo de una experiencia comercial CERO, y después pasé a Android, a desarrollador de iOS/TvOS y a más cosas.

Durante todos mis años de experiencia vi a gente persiguiendo cualquier puesto en este campo, a otras personas atascadas en el mismo rol y sintiéndose insatisfechas, y a otras con una carrera brillante difundiendo ideas equivocadas. Todas tenían algo en común: predicaban algunos mitos, cada una por motivos distintos.

No sé por qué cada una trataba esos mitos como la única verdad. Puede ser verdad para algunas personas. No es el caso probable para todo el mundo.

No pretendo tener la verdad incuestionable, pero si me pasó a mí una vez, es bastante probable que a ti también te pueda pasar.

Aquí van 5 de los mitos que deberías dejar de creer si quieres labrarte una carrera en software, en aplicaciones móviles, en desarrollo web y en lo que venga después…

Developer career myths concept illustration

1. Tienes que tener SÍ o SÍ un título

Un título no es imprescindible. Alguien sin título, con buena actitud y pasión por este trabajo, puede hacer un curso en línea, practicar y alcanzar un nivel que permita que le contraten.

No estoy diciendo que un título sea inútil ni una pérdida de tiempo y de dinero. Conseguirlo exige mucho esfuerzo, estudio y disciplina, y todavía más si quieres sacarlo con buenas notas. Si tienes uno, te admiro de verdad: me quito el sombrero. Sin embargo, hay personas que descubren más tarde la pasión por este trabajo, pueden formar parte de un equipo de desarrollo y conseguir los mismos buenos resultados.

Mi opinión es: El título te da una buena base y unos cimientos para ser desarrollador o ingeniero de software. Al mismo tiempo, si tienes la suerte de contar con un grado y/o un máster, no deberías sentirte superior ni menospreciar a tus futuros compañeros, que lo más probable es que no tengan ninguno de los dos. Aun así, mi más sincera enhorabuena si tú sí lo tienes.

Mi ejemplo es: En uno de mis puestos anteriores trabajé con alguien que llevaba varios años de ingeniero de software y tenía título, y con alguien que tenía un año de experiencia comercial y cuyo trabajo anterior era de cajero en un supermercado muy conocido aquí, en el Reino Unido. Los dos eran brillantes en su respectivo papel y formaban un equipo increíble.

2. Tienes que empezar SÍ o SÍ en un puesto de graduado o de prácticas

En absoluto. Me gustaría usar mi propia experiencia como ejemplo. Antes trabajé en ambulancias en Londres, haciendo transporte de pacientes y transporte de alta dependencia con luces azules.

London ambulance representing previous career before software development

Sin embargo, siempre sacaba un rato para aprender más sobre programación, que es mi pasión y mi afición desde muy joven. Debo decir que no esperaba ni estaba buscando un puesto de programación hasta que un reclutador me llamó por un rol júnior de desarrollador de videojuegos, y decidí intentarlo.

¿Por qué no, verdad?

Hice la entrevista y, a los pocos días, recibí una respuesta positiva.

A día de hoy no sé qué vieron en mí para darme una oportunidad como desarrollador júnior de videojuegos viniendo de un trabajo en ambulancias, pero siempre les estaré agradecido, e intenté demostrar ese agradecimiento cada día con trabajo duro.

Aun así, si no hubiera sido por mi pequeño portfolio y por mi actitud, no creo que hubiera superado la entrevista. Y después, sin las ganas de aprender, las muchas horas extra invertidas en rendir mejor en el trabajo y el esfuerzo continuo, no habría superado el periodo de prueba.

Motivational quote about hard work and proving yourself

Lo que de verdad intento decir es: «Trabaja duro, demuestra que vales y confía en que alguien te dará esa oportunidad que mereces.»

Empecé sin experiencia como júnior; otros empezaron en un programa de graduados; otros, en un puesto de prácticas; otros, creando sus propias aplicaciones, vendiendo aplicaciones en codecanyon.com o dando clase en distintas plataformas de aprendizaje en línea… No importa dónde empieces pero, por favor, empieza.

Cuanto antes lo hagas, mejor.

3. Necesitas SÍ o SÍ experiencia comercial para ser contractor

Aunque yo no soy el mejor ejemplo de contractor, lo cierto es que aprendí mucho de distintos contractors con los que trabajé en el pasado. En especial quiero nombrar a uno, RobJ, que no solo es uno de los desarrolladores Android contractors con más talento con los que he trabajado y de los que he aprendido, sino también una gran persona y un buen ejemplo de lo que es un contractor. Además dirige un pódcast estupendo, Coffee & Coding. Puedes encontrar más sobre su pódcast en este enlace. Echa un vistazo al episodio número 5 de la primera temporada > enlace Donde hablaron de: • Cómo destacar como candidato • Cómo trabajar mejor con los reclutadores • Por qué algunos puestos sénior están gravemente mal pagados

En uno de los episodios mencionó que la diferencia entre un puesto fijo y un contractor son «los ingresos», y estoy de acuerdo, pero yo añadiría también, quizá, la estabilidad.

Como contractor diría que la experiencia comercial ayuda, pero las empresas que yo he visto quieren un contractor para una tarea concreta, durante 1, 3, 6 o 12 meses (rara vez he visto uno más largo). Pero, por ejemplo, si una empresa con una aplicación móvil que muestra peluquerías para reservar cita quiere añadir Google Maps y mostrarlas todas, entonces tú, como contractor sin experiencia comercial, con aplicaciones publicadas y proyectos personales que demuestren que se te da bien integrar Google Maps y construir aplicaciones bien estructuradas, puedes conseguir el trabajo con tanta facilidad como alguien que tiene experiencia construyendo aplicaciones en general, pero con poco o ningún conocimiento de Google Maps. Por supuesto, tu tarifa diaria será más baja, y eso es un punto a favor.

Puedes conseguir el trabajo sin experiencia comercial. Aun así, es mejor si ya tienes aplicaciones en Google Play o en la App Store de iOS, proyectos personales en GitHub o GitLab, y puedes superar una entrevista técnica.

Si quieres un primer puesto, empezar como contractor puede ser una buena opción.

4. Tienes que ceñirte SÍ o SÍ a un solo campo de la programación si quieres ser bueno en él

Es verdad que dedicar todo tu tiempo o tus recursos a un solo tema o campo puede ampliar tus conocimientos más rápido en esa única cosa que repartirte entre varias. Lo cierto es que puedes ser muy bueno en un campo y lo bastante bueno en otro, del mismo modo que puedes programar, cocinar y tocar instrumentos a la vez. La clave serán tu dedicación y tu práctica.

Por ejemplo, ahora mismo trabajo como desarrollador Android dentro de uno de los equipos más increíbles de desarrolladores Android con talento con los que he tenido el placer de trabajar. Sin embargo, antes también trabajé como desarrollador de videojuegos en JavaScript y como desarrollador de iOS/TvOS.

Hacer varias cosas a la vez no es lo ideal para todo el mundo. Depende de la persona. Encaja si te encanta la programación en general.

Poniendo un ejemplo real: al saber programar en Swift para iOS, el salto de Java a Kotlin para desarrollar aplicaciones Android fue mucho más fácil, y ahora puedo leer código con soltura en varios lenguajes y llevar ese conocimiento a la tecnología con la que esté trabajando en ese momento.

No es la primera vez (ni será la última) que trabajo en una funcionalidad concreta como desarrollador Android en la que el equipo de iOS ya había resuelto la misma tarea, y uso su código para hacer los mismos cambios en Android, y al revés.

Saber programar en distintos campos está bien, pero no te obligues a hacerlo, porque no es obligatorio. Primero consigue un dominio completo de lo que más te gusta; después, si un día eso no basta, o tienes más tiempo, lánzate a un segundo campo.

5. Todos los lenguajes de programación son iguales

En algún momento del camino oímos a alguien decir:

«Cambiar de rol de programación es fácil: solo tienes que aprender la sintaxis nueva y con eso deberías apañarte»

o

«Cuando conoces un lenguaje de programación, los conoces todos»

Esa frase no es incorrecta al 100 % si solo buscas conocer las distintas sintaxis, pero necesitas mucho más que saber cómo se usan una función y una variable en un lenguaje concreto para trabajar con eficacia, o incluso para encontrar un trabajo en ese campo.

Conceptos como «cómo escribir código limpio», «cómo escribir código que se pueda probar», «cómo probar tu código», «qué arquitecturas puedo usar para que todo tenga más sentido», «cómo depurar», «nuevas herramientas y bibliotecas de moda», y más… La sintaxis es solo el primer paso del camino.

No hay pasos predefinidos para cada recorrido y, además, cada persona es distinta.

Si quieres empezar a aprender algo nuevo, pregúntate si merece la pena. Averigua primero si el objetivo a largo plazo compensará los miles de horas que vas a dedicar a aprenderlo. No te conviertas en un «aprendiz de todo, maestro de nada».

Recomendaciones:

Si buscas un puesto en este campo como desarrollador, ingeniero de software… (con título o sin él), hay un montón de recursos gratuitos que puedes usar, como:

  • freecodecamp.org y su canal de YouTube, que puedes encontrar en este enlace para inglés o en este otro enlace en cualquier otro idioma (español, hindi…).
  • Udemy también ofrece una amplia gama de cursos de pago y gratuitos, para conseguir una base y unos conocimientos.
  • Udacity ofrece cursos de pago y gratuitos, y pone a prueba tus conocimientos con cuestionarios y actividades.
  • davthecoder.com Yo también tengo una academia en línea gratuita en la que creo cursos para desarrolladores Android. Como alternativa, mis cursos están en Udemy y en Skillshare, o en mi canal de YouTube.
  • Edx.org es una plataforma de aprendizaje en línea en la que puedes encontrar cursos y material gratuitos de muchos campos, no solo como ingeniero de software.

Además de estas recomendaciones, me gustaría darte unos consejos si quieres tener éxito a largo plazo:

  • Sigue aprendiendo. Todo lo que puedas, sin renunciar a tu vida social.
  • Enseña lo que sabes y aprende de los demás todo lo que puedas. Es gratis.
  • No presumas. En serio, a nadie le gusta trabajar con un desarrollador que se proclama perfecto, incapaz de reconocer cuándo se equivoca, y que se inventa argumentos para demostrar su «conocimiento».
  • Ten la mente abierta. Quizá otro desarrollador pueda enseñarte algo que no sabes, y al revés.
  • No tengas miedo de pedir ayuda cuando la necesites. Nadie esperará jamás que lo sepas todo; además, al hacerlo, te ganarás la confianza de tus compañeros y de otros desarrolladores, porque te verán como alguien sincero y de fiar. Si no lo sabes, no lo sabes, y punto: no pongas excusas.
  • Cuando te bloquees, ten presente que en programación todo es posible. Solo tienes que encontrar el camino y aprender de ello.
  • Reconoce tus límites y amplíalos.
  • Disfruta del camino.

Si tienes alguna pregunta, alguna sugerencia o quieres compartir tu experiencia, deja un comentario.

No olvides seguirme en Medium. Y, por supuesto, aplaude este artículo

¡Feliz programación! David Cruz paglipat.com

Sigamos en contacto: Web de davthecoder: https://www.davthecoder.com Blog de Medium: https://davthecoder.medium.com/ Twitch: https://www.twitch.tv/davthecoder GitHub: https://github.com/davthecodercom Instagram: https://www.instagram.com/davthecoder Twitter: https://twitter.com/davthecoder YouTube: https://youtube.com/@davthecoder ¡Apóyame en Patreon! https://www.patreon.com/davthecoder

Share:Compartir:

CommentsComentarios

Loading comments…Cargando comentarios…