A Beginner's Guide to a Path.dev Software Career
Teknoloji alanında iş bulmak istiyorum, nereden ve nasıl başlamalıyım?
I have been working on software training since 2014. During this time, I had the opportunity to follow the journey of many people who tried to make a career path in technology for themselves while designing Launchcode in America, Kodluyoruz in Turkey and Pathika. During this time I have encountered hundreds of questions. I decided to share these questions that I have encountered and what I have learned over the years as a series of articles in the hope that it will help people.
In this series of posts
and I plan to address many other important issues in light of my experiences so far.
I think it would be appropriate to start this article, which is the first post in the series, which is the most frequent and basic question: I want to get a job in the field of technology, where and how should I start?
Today, there is a high demand for software developers both in the world and in Turkey. Therefore, even if you do not have training in this field, it is possible to find a job close to what you want by spending a little effort and improving yourself. The software industry also offers highly attractive career opportunities with high wages.
This journey is a long and laborious journey. I share step by step my advice on how you can start this journey and the free resources you can use below.
I find that almost everyone who is considering becoming a software developer has this concern: “Am I too late to enter the software field?”
No, you're not late!
You may be wondering if there is still a need for programmers in the market. But I can safely say that the need for a software developer in the market today is higher than ever and it is easier than ever to learn software development tools. Now is a very good time to enter this space.
Perhaps you think that you are not young enough to learn something new, or that you are late looking at what went into software at a very early age in your environment. Rest assured, because this is a very common problem. Those who learn to code at 30 years old look at 20-year-olds and think the same thing, while 20-year-olds look at those who have been doing software since middle school and say, “I wonder if I'm late.”
If you really want to get into this field, it's not too late to start preparing. Preparations will take maybe six months or a year. But this decision you make now will affect your career of 30 years or maybe 50 years ahead of you.
Perhaps you have studied in a different field of engineering in the past. Maybe you have a background in social sciences or the arts. Perhaps you think that because your university is not prestigious enough or you are not a university graduate, they will not prefer you. Maybe you're still in high school. If you feel that you have a passion for this field and that you can do the necessary hard work, you can start building a career in technology.
Since 2014, I have helped many people to enter software careers, first in America and later in Turkey with Kodlu. Meanwhile, I was part of the founding team LaunchCode'da A high school graduate who works as a bus driverI saw him improve himself and get a job as a systems engineer at Mastercard. We encode with bootcamps Cansu, Shamrock, and Hope We have been instrumental in the transition of people like this into the software field. I'm not telling all this because they are impressive success stories. I just want to ask and show that working can create the transition to a software career. Let me even give you a better example.
StackOverflow 2015 surveys When you look at it, you will see a similar picture. 48% of the surveyed programmers had not studied computer engineering. Most of them learned to write code on their own, online or while working.
So I say don't worry too much about your age, your school, your background. If you are excited and passionate about this field, it is not too late for you to enter the field of software and technology.
If you're interested in the tech industry, but you can't guess where to start, the first thing you need to do is try coding something simple.
It's no longer a problem that you don't have a software history, because there are so many websites and apps like Codecademy that teach you how to code even those starting from scratch. It is possible to understand whether you enjoy writing code by trying to code something simple and with a coding time of 10-20 hours.
Especially since it will not be enough just to listen to lectures on a subject that develops through practice, such as coding. It is very important to practice. Your hand should get used to the keyboard. It is very important to take the time and do the homework given in the online courses. Like any job, it has its challenges. Remember, there is no food without labor.
Writing code can be a very tiring process, even if you are a good programmer who has advanced in a software development career. In this area give someone a schedule and keep him busy for a day, teach him to program and keep him busy for life There is even a saying.
How does coding make you feel, especially when you are confused? This arouses the curiosity of some people and annoys others. You yourself can decide whether this process will be positive for you by observing your reactions in such situations.
If you have tried writing code for a while and decided that you enjoy it, congratulations, a long learning process awaits you.
If you don't like what you're doing, don't worry, it doesn't mean your career in tech is over before it starts. The technology sector and technology-related fields are vast. Therefore, there are many different subdisciplines in which you can develop yourself and evaluate your abilities. All of these fields require a lot of talent, and in each of them there are exciting and exciting career opportunities. As far as we can see, the following stand out:
Learning to code is of enormous benefit to all of these career possibilities. But overall strategies for these areas can be very different. So let this be the subject of our future posts.
For now, let's proceed from the topic of how we can improve ourselves in the field of coding.
Software development is the most important part of the rapidly growing world of technology. Under the umbrella of software development, there are many different areas that you can choose according to your interests. We can group them as follows:
The good news is that there is a very serious programmer gap in all of these areas. The less good news is that in order to advance in any of these areas, it is necessary to choose one and work hard in that field.
So how do we decide which one to choose?
That's entirely up to you. You may have tried any of them before and liked them very much, or have been trained in one of these subjects before. Such a situation makes it easier for you to make a choice. But if you do not have experience and can not decide where to start, I will give you some advice:
If you are still not sure which path you want to choose after a short stroll through the trails, my advice is that you start as a frontend web developer. (I even recommend that my acquaintances who ask me for advice choose this path.)
The frontend web developer path in path.dev focuses on Javascript and React. This, in turn, offers three main advantages:
The goal here is to choose the first role in the entrance to the technology sector. After you start work, many projects will expect you to acquire new skills, and you will need to learn a lot in addition to the parts you specialize in. You can go in different directions from the area where you started your career. The part we focus on here is that you can get into your first professional job.
It is necessary to master this area a little in order to get a job in your chosen field. Many people I meet underestimate this learning process. He expects to become a programmer in a few months, spending 4-5 hours a week.
It is necessary to be prepared for at least 1000 hours of study to develop your technical skills on your chosen path. This means months of work with intensive work. If you do a simple calculation, you will see that you can reach a level that you can reach in 50 hours a week, in 20 weeks, or with 70 hours of work in 15 weeks.
On the other hand, spending these 1000 hours in different areas is not the right approach. You may have learned a little Python before, done a little HTML CSS. However, if you want to be a mobile developer, you have to spend a lot, if not all, 1000 hours on your way to becoming a mobile developer.
There may be points in the learning process where you will be challenged or bored. Another area may seem more exciting to you at a moment. If you want to learn more, you may find yourself starting an irrelevant education. Changing the area you're constantly working on is one of the biggest mistakes you can make in the process. At this point, you must stick to your initial plan and move forward in your field.
Nowadays, there are a lot of quality training videos on the Internet. Sitting and watching them can be both very educational and very enjoyable. But it is not possible to learn coding just by watching videos. If you need to go into the water to learn how to swim, you also need to spend most of your time actively coding to learn coding. My advice is to spend at least 80% of the time you spend learning actively coding.
I realize that sounds like a lot, but succeeding in this area requires a serious pace of work, especially when you're at the beginning of the road. This journey can take long hours, sometimes days, to work on a project on your own.
I'm guessing you're thinking, “Who can work 50 hours a week for 20 weeks?” Yes, this situation requires great willpower and focus. Even as the person giving the advice, I am absolutely sure that I would have a hard time doing something like this on my own. That's exactly why I'm going to give a few more tips that I think will make this process a lot easier.
Being part of a community that will help us motivate ourselves and learn together is very beneficial in terms of feeling the presence of someone to learn and consult with. You can find a highly tolerant and friendly environment consisting of people who will support you in the software field. One advantage of the technology sector is that people working in this field are more open-minded, curious, hopeful and excited than in many other sectors. The fact that they are part of a global community has a huge impact on this.
When we set up Pathika, we tried to establish a support mechanism to make this learning process easier for beginners and to ensure that they do not lose motivation.
Launched in June LaunchPad We have created a warm community for those who are trying to get into a software career in the program. Many people find answers to the questions they hang out with here and meet new people at the social events we organize. LaunchPad is free for everyone and there are no prerequisites for participation. The great thing about the program is that so many people like you have embarked on this journey on their own and are ready to support you.
There are a lot of things you need to learn and solve in order to develop software. It is possible to learn only some of them through lessons. You need to experience everything else for yourself and learn by internalizing it through those experiences. The best way to do this is through assignments and projects
No matter which Path you choose, you will find many assignments and projects in it. My advice is that you do not skip assignments because they have all been strategically thought out and added to support your learning process.
It is possible that you will encounter mistakes that the instructor did not mention when making projects. For example, you will want to change a design very little, and then you will not be able to get out of it for hours. When the instructor tells it, it will come off as meaningless or too complicated when writing some things that are very logical and natural. To be honest, you will tear your hair on your head, you will have to get up from the computer and take a break. But it is precisely this point where what you have learned settles, where you do not know becomes clear, and your ability to solve problems develops. So, the point where you should not give up!
Increasing the complexity of your projects step by step is a much more beneficial approach when working on your own. Because many people can embark on very large projects and lose their enthusiasm in a short time. For example, it would be beneficial to start with projects that you can finish in just 2-3 hours first, and then embark on longer projects that will last a day after you see that you can successfully complete them. After that, you will be able to start and finish projects of 3-4 days, a week and a month with time.
If possible, make it available after completing your projects. If you are working on a frontend web development project, install it in the cloud so that everyone can access it. If you're working on a mobile development project, publish your app in the Play Store or AppStore. This process will show you what processes a real digital product covers and prepare you for the professional environment. Upload the code for your projects to GitHub and write a nice, explanatory Readme document.
Also remember that the projects you do will be proof not only for you to learn, but also to show your skills when you apply for jobs.
After the first 100 hours of this 1000 hour journey (if you work hard, you can get to this point in 3-4 weeks), it's time to do the “coding challenge”. These exercises, which often require you to solve the desired problem by coding in limited time, are also an elimination method used in the acceptance process of both the jobs you will apply for and the Pathway and We Code bootcamps.
The best way to prepare for them is HackerRank Perform problem-solving exercises. You can register for free at HackerRank and collect points and increase your star count by solving different different problems in the coding language you are used to.
Once you get used to the style and environment of these exercises, you can start enjoying them. We could call it a kind of brain exercise.
In HackerRank problem-solving, your goal should be to reach three stars. When you reach this point, you will be ready to pass the coding tests of Pathika and Kodluyoruz's bootcamps.
Once you have completed the 100-hour study marathon and start coding exercises in HackerRank, you are ready to apply for bootcamps.
Since the application, testing, and interview processes will take more than a month on average, I think you will progress further before bootcamp begins if you continue to study.
A bootcamp covers an intense 7-8 week learning process with assignments, lectures, and a graduation project. It also offers important features that support the learning process, such as the opportunity to work closely with a quality instructor and a community you can work with. Thanks to the intense working pace of Bootcamps, you will both approach the level you want to reach much faster and you will have the opportunity to get a job at sponsoring companies.
Your job is even easier if you have joined the LaunchPad program. Thanks to LaunchPad, you will have the opportunity to apply to our bootcamps with a short application form, so you will be able to complete your application in 5-10 minutes. You will also have the opportunity to get the news of bootcamps that will open in the LaunchPad Discord environment before anyone else.
I recommend that you try your luck by applying to the bootcamp, which is about every topic you work on. If you are not selected for Bootcamp, do not get discouraged and keep working. Think of every bootcamp application like a job application. Pathway and We Code open 5-10 bootcamps every month. So there will be plenty of bootcamps where you can try your luck.
Since most of our bootcamps are funded directly by the sponsoring company on a recruitment basis, these bootcamps are aimed at participants who are ready to enter full-time employment. If you have less than a year left before you graduate from university, or if you have already graduated, you should definitely apply for our bootcamps.
In the course of 1000 hours of learning, you will often get the feeling that you are inadequate. Getting carried away by this feeling wastes you time, instead focusing on solving the problem in front of you makes it easier to overcome the feeling of failure.
Take a break when you feel like you're hitting a wall or start to doubt yourself. Get up at the computer for a while and focus on your other tasks, or better yet, go for a walk. When you feel better, make yourself a cup of tea and sit at the computer. You will find that you reach the solution more easily.
The main thing is to approach the process with the right perspective, learn from mistakes, learn to enjoy and move on. Making mistakes and not losing motivation for making mistakes is the best thing we can do for ourselves. You yourself will not believe how much you have improved as a result of every 50 hours of work. Moreover, you will find that at first you have solved and even started to be able to use many tools or concepts that seemed incomprehensible to you.
Sometimes you'll be proud of yourself when you've completed a difficult lesson, and sometimes when you've worked on a project you've spent days working on. Do not forget to celebrate your success in these cases. Before moving on to the next topic or project, realize how far you've come and congratulate yourself. You came here by your own efforts!