Yes, it is worth learning Flutter app development in 2023. You get the satisfaction of creating something valuable, get paid for it, and all the other good stuff!
I want to share the benefits and advantages that you will get if you decide to learn it, or even start a career as an app developer.
This article is not only for current software engineers who want to learn a new framework but also for people without a programming background who are considering making a career shift to the world of app development.
Starting a career in software engineering
I personally did not start in the app development space. I was not even a programmer when I finished university. But after spending time learning on my own and doing side projects, I was able to build a career that is still going on for 10 years.
Some people might tell themselves they do not have what it takes to start a career writing code. I disagree. Anyone can become a software developer as long as they have these two key assets: Determination and Time.
You need to be determined to learn new skills. You just have to want it. All information that you need to be successful is freely available on the internet, this website included! It is only yourself that's preventing you to gain more knowledge.
You don't need a high level of mathematics knowledge to start. Considering the requirements and gruelling interview processes posted by companies looking for software engineering candidates, I understand that it is a very bold statement. You still need to learn the fundamentals to start moving.
Knowing the fundamentals of logic theory and mathematics is essential, and is something that you will learn eventually as you start your learning journey in software development.
The catch is that you need to have the determination to start. You need to start soon.
The other requirement is time. Author Malcolm Gladwell proposed that mastery of a skill happens after spending 10,000 hours of dedicated work. This roughly translates to working on your skills for around 3 hours a day, every day, for 10 years.
While your first goal is not to be a master at first, it is important to designate a reasonable amount of time to learn how to write code, understand programming concepts, and learn the framework that we want to use.
Flutter is an open-source framework made by Google used to build apps across different platforms.
1. It's easy*
The primary language used in Flutter is
Dart. Based on my experience,
Dart is a relatively easy programming language to learn, especially for developers who have worked with Java, Python, or other object-oriented languages.
Building a user interface in Flutter is straightforward. Flutter code can be described as hierarchical in nature, built from trees of basic units called Widgets. You create these widgets and combine them with each other to form beautiful screens.
The truth is, learning your first programming language may require certain changes in your perspective to understand (e.g. loops, condition statements, etc.). Flutter's thorough examples and documentation will definitely help to get you started.
2. It runs on all platforms
This is the best time to write Flutter apps because of how Flutter supports development not just on mobile platforms but also on desktop and web.
Flutter keeps your mind focused on developing features instead of learning all the bits and pieces of each platform that you want to build the app for. As they say, one code to rule them all.
3. It provides a smooth development experience
Imagine working together with a designer while both of you are going through a prototype. Flutter makes it possible to do this seamlessly because it was built to make the development process fast as it reduces unnecessary waiting times for feedback.
Hot reload is one of the features that I like where you see your new changes in code being applied on your test device instantaneously. There is no need to wait to compile and deploy your app to see the changes which saves you a lot of time.
The framework itself is also open-source, which means a whole bunch of contributors are improving Flutter and developing useful libraries for your apps.
The Edge of an App Developer
The perks you get as a Flutter developer
1 - Be a creator
Humans have always been driven to create solutions. A study from Drexel University has shown that creating something and solving a problem invokes a certain reward response from the brain. This response produces pleasurable experiences similar to food intake, positive social experiences, addictive drugs, and orgasms. You can say that our brain rewards us for being creative.
Being a Flutter engineer makes you a creator. You can create solutions for other people's problems. If you discover a problem and think of a solution, you can immediately test a solution by yourself.
Having the ability to quickly write up an app gives you the opportunity to provide instant value especially if it involves a technical approach. If you come up with an interesting business idea or even join a hackathon, you can easily spin up a product on a browser or desktop and have something to show for it.
2 - Financial stability
The technology space is one of the most lucrative fields to have a career in 2023. A quick lookup at the current market in Sydney shows an average salary of $130,000 AUD for entry to mid-level software engineering roles. This may widely vary from where you live or your experience but it's hard to deny the monetary opportunity it can provide.
As for Flutter-specific developer roles, Flexiple has provided data from different sources that show a similar average salary in the US market.
The game has changed now in terms of software engineering opportunities. Many tech start-ups and companies are still on the lookout for developers. Even non-technical businesses are starting to have their own digital transformation, which in turn creates high demands for engineers.
Getting a job from these companies still depends on your skills, but knowing how many tech roles there are indicates the strong demand for software engineers.
3 - Freelancing opportunities
Working full-time for a company might not be the best fit for you. You may have dependents or might be in a certain condition where you cannot work on a full-time schedule.
Being a Flutter developer gives you the opportunity to work on a freelance basis. Online portals such as Fiverr and UpWork have businesses looking for developers to build their apps from scratch.
I had a colleague who used to move constantly from one place to another while working according to her local time zone at the time. As long as you have your computer, an internet connection, and skills, you can do your projects wherever you are.
4 - Entrepreneurial endeavours
Building a business is one of the many paths you can take when you start learning Flutter.
As a Flutter developer, you already have what it takes to build something that generates revenue. Whether you build an app and sell it on different app stores or have subscription-based services, your skills will give you a push to start building.
You can also build a start-up based on your ideas which you would pitch with an actual proof-of-concept you just built. Showing an actual app on a device is a much more effective pitch than pure speech.
Another great by-product of running a business is creating jobs for other people. While you're earning money, you also help your team achieve financial stability. It's a win-win situation for everyone.
Many of the things I shared are based on my experiences as an app developer. I have first-hand experience with many of the points I mentioned and am still working to achieve the rest.
I hope that I have inspired you to try out app development. Whether you have a tech background or not, you will succeed if you dedicate your time to working on it.
Start learning Flutter and start giving value to yourself and others. Happy coding!