Navigating the Path to Becoming a Software Developer
11 november 2025
11 november 2025
Four years ago, one of us was working in a medical research laboratory while the other worked as a physiotherapist. Today, we are both software developers at Viduet Health. We came from backgrounds very different from those of typical software developers, yet we have succeeded in understanding, changing, and maintaining the code base of our entire telemonitoring platform. Although it felt overwhelming at the beginning, we quickly started to get the hang of it. In this blog post, we would like to offer guidance to others thinking about making the switch to software development.

In our previous jobs, we both had connections to healthcare. While one of us was trying to find clinical cures for brain diseases, the other was actively treating injuries. Although these were fulfilling roles, the pace at which we could impact the bigger picture in healthcare felt too slow at the time. We wanted to create solutions quickly while helping large groups of patients. Now, we work in one-week sprints, deploying multiple new features each week that directly impact many patients and healthcare professionals.
Not having a computer science degree or prior development experience might make switching to a software development position feel impossible. You might think you would have nothing to offer the team. We experienced the opposite. The tech industry needs people who can bridge the gap between technology and the real world. Your domain expertise — whether it is healthcare, education, finance, or any other field — is valuable. Software is not built in a vacuum; it is built to solve real problems for real people. Who better to build healthcare software than someone who understands patient care? Who better to create educational tools than someone who has taught?
Having a different background can actually be highly beneficial to a team consisting solely of seasoned development professionals. With our distinct perspectives, our contributions to the team have been very valuable. Furthermore, because we lacked coding knowledge when we started, the experienced developers were challenged to make the code base more readable and understandable. This had an unexpected benefit: our code base became clearer, and new colleagues have little to no problems understanding the code. Our entrance into the team has therefore had a positive impact on both the development team and the product as a whole.
If you are reading this and feeling both excited and terrified, that is completely normal. Here is what we want you to know: the skills you have developed in your current career are more relevant than you realize. Yes, you will need to learn to code. Yes, there will be frustrating moments when you are debugging for hours on end. But you have already proven you can learn complex systems and master challenging skills. This is just the next one.
Now, let’s talk about concrete ways to begin your coding journey…
Before diving deep into learning to code, we highly recommend reaching out to developers already working in the field. LinkedIn is an excellent platform for this. Search for developers who work in areas that interest you, and do not hesitate to send a polite message asking if they would be open to a brief, informal phone call about their experience. Most developers are surprisingly willing to share their journey.
During these conversations, focus on finding similarities between your current skills and theirs, rather than dwelling on the hurdles. Ask questions like: “What does your day-to-day work entail?” or “What skills from outside of coding do you find yourself using?” You will often discover that problem-solving, communication, understanding user needs, and collaborating with colleagues are just as important as technical ability. These conversations will not only give you valuable insights but also help you build confidence that your existing skills are transferable and valuable.
When we first explored information technology, we were overwhelmed. There are so many paths — software engineering, data science, UX design, cybersecurity — and we did not know where to begin.
Instead of trying to learn everything at once, we picked one area and committed to exploring it consistently.
We chose front-end development. Why? Because it is visual, the results are immediate, and it feels like the most tangible way to start building things on the web. That single decision cut through the noise and gave us a clear direction.
There are endless resources out there, and honestly, that can be overwhelming. The trick is not to chase them all — just pick a few favorites and stick with them. For us, it was:
We took courses like “Intro to Computer Science” and “CS50: Introduction to Computer Science” to understand core concepts and were able to follow these at our own pace. Knowing the “why” behind the code made everything click later on.
This is where you see results instantly, which is incredibly motivating. My first tech book was Head First HTML. It made learning fun. We built little websites — and were proud of every single one.
CSS lets you style those sites, adding colors, layouts, and fonts to make your projects look polished while you learn. A good course on this are the W3Schools CSS Tutorials.
Once we understood the basics of the web, we picked a language. We chose JavaScript and Python since these languages are very beginner-friendly.
The courses that helped us most were: The Complete JavaScript Course by Jonas Schmedtmann on Udemy — beginner-friendly, project-based, and super clear, and The Complete Python Bootcamp From Zero to Hero in Python by Jose Portilla.
From our experience, learning your first programming language is the most challenging part of the journey. It is a big step — learning a new way to think, solve problems, and structure logic.
Once you master one language and start building projects, everything changes. You’ll start to understand concepts like loops, conditionals, and functions more deeply. From there, learning additional languages becomes much easier because the logic often carries over.
We currently work as Clojure developers. It is quite different from the languages we originally learned, and has a steep learning curve. However, we successfully managed to feel comfortable with it, and we now see Clojure as our primary coding language.
Software development is not just about writing code. It is also important to write it in such a way that it makes sense to other people, and that it can be used now, but also in a year. There are several ways to set up your code so that it becomes clearer and easier to maintain. There is test-driven development, where you write small tests before you write the actual code, and only continue when the test succeeds. Then there is clean code, a way to write code that is easy to read, understand, and modify because it clearly expresses its intent with simple, well-named elements and minimal complexity. There are also more ways to work, like functional programming, object-oriented programming, familiarize yourself with these methods, but you do not need to learn them by heart. For now, proceed with building small projects.
Once you feel comfortable with your first language, start building real projects. Do not wait until you “know everything” — the best learning comes from doing.
Ideas to start with:
Why it helps: Each project teaches you something new — how to structure code, debug errors, and connect different parts of an application. Even small projects are proof of your skills
The back-end is the part of a website or app that you do not see — it is what happens behind the scenes. It stores and manages data, makes sure everything works correctly, and sends information to the front-end.
To start understanding back-end development, focus on a few basics:
Databases: These are where information is stored, like customer orders in the restaurant. Examples include MySQL, PostgreSQL, or Datomic.
CRUD operations: These are the basic actions you can do with data:
Create – add new data.
Read – view data.
Update – change existing data.
Delete – remove data.
Joining online communities, Discord groups, or local meetups gave us motivation and accountability. Some of the best advice I got came from people just one or two steps ahead of me.
While continuing to make your personal side projects, you should already have a great foundation to start looking for your first job in software development. By this time, you might also have a feeling about what kind of job you want. Try contacting companies you would like to spend your days at, and give them a call. Be confident, and talk about the things you have learned during the process of your side projects. Good luck!