This is a translation of the success story from our global Java community. Alex learned Java on the Russian-language version of the course, which you study in English on CodeGym. May it become the inspiration for your further learning and maybe one day you’ll want to share your own story with us :)Retraining on steroids - 1Two years and three months have passed since I signed up for this course and wrote HelloWorld. I should have written this article and paid tribute to this wonderful resource long ago, but somehow the fast pace of life stopped me. But now "thanks" to the covid pandemic, I have time. I was 33. I was a social worker in Latvia and had nothing to do with IT. My last experience with code was 15 years ago. But my meager salary and lack of career prospects made me look for an alternative. As it happened, many of my friends tried their hand at the IT field. Moreover, none of them had an IT education. Some got jobs, some didn't do very well. But the successes inspired me a lot, and I finally made up my mind. In Riga, once every six months, a well-known consulting company organized a series of free bootcamps (intensive training courses) with a subsequent opportunity (for those who graduate) to get an internship and an employment contract. I spent some time thinking about which course to take. In the end, I chose Java, because it was the Java bootcamp that provided the largest number of opportunities after graduation. I was able to do some reconnaissance and speak with bootcamp participants, including some who were already hired at the company. Here's the intel I gathered: the course is extremely intense; it makes no sense to come there with zero knowledge; it is better to learn everything yourself before the bootcamp. So I quit my job four months before the bootcamp, settled down at home, living on financial aid and some small savings, and began to study intensively. What was the training program like? Well, first of all, this CodeGym was naturally the practical arm of my training. The theoretical arm was Head First Java (Java 5). And I must say, CodeGym and Head First Java complemented each other perfectly. The book gave an excellent overview of the basic features of the language. What's more, the material included easy-to-understand visualizations and analogies (the glass with a remote control is really wonderful). I know that seasoned techies dislike this book precisely because of this presentation, but if you're coming from the humanities, this is just what you need. In any event, this is what my curriculum looked like: 3 hours of theory from Head First Java in the morning, 3 hours of hands-on practice on CodeGym in the afternoon. 6 hours every day, including weekends and every holiday. Very intensively. Perhaps too intensely — my strict regiment caused certain health problems. If you have the time and a financial reserve, I would not recommend such an intense approach. But I didn't have that luxury, and I couldn't fail the bootcamp. So I studied for 4 months until the bootcamp began, reached Level 23 on CodeGym with a decent solution to all the tasks (though some of them made me sweat a lot), and finished the book, having completed all the tasks. I still had a couple of weeks before the bootcamp. I could have made additional progress through the levels, but I instead decided to master all sorts of related skills, like Git. The bootcamp began, and the courses were super intense, but it turned out that I had not previously encountered only two of the topics: writing unit tests and JavaFX. My bet on rigorous self-study paid off. It also turned out that I wasn't the worst in the group. In addition, I decided to take the initiative and throw a big punch for the final project. A small but wonderful team was assembled and produced an application for nurses (my background as a social worker came to the surface). In all, the bootcamp ended well, and I got an internship and even had the opportunity to choose a specialization. Here I committed a nefarious betrayal by choosing Salesforce instead of hardcore Java. Salesforce started out as a cloud-based CRM (customer relationship management) system that offered quite a lot of customization options. But many years later, it is now a powerful full-fledged platform that lets you do almost anything. I've seen many projects that have nothing to do with CRM. Basically, Salesforce is now a cloud-based database to which you can nail nearly anything you want to. For the backend, Salesforce uses Apex, which is a kind of "Java for retirees". It makes Java syntax case insensitive, there is no managed multithreading, there are relatively few built-in classes, and almost all code revolves around writing and retrieving data from a Salesforce database. But it also has its own difficulties. Apex code is run on the server side, where theoretically any Saleforce user could claim the full power of the cloud. To prevent monopolization of resources, there are a host of governor limits. These limits apply to all Salesforce customizations, including Apex. Sometimes this means Apex code looks strange to Java developers. Besides Apex, SF has three native front-end frameworks: Visualforce, Aura Components, and the entire new Lightning Web Components. After signing my employment contract in early July, my first assignments were related to the second framework. This was my first acquaintance with JavaScript, a language that I gradually fell in love with, though with difficulty. By the way, I actively worked with both JavaScript and Apex. The first thing I learned about Salesforce was every marine is a rifleman. At Salesforce, we are all full-stack developers. Plus, as I mentioned, Salesforce is a whole world — not just a single language. In addition to the code, there are many declarative tools: Process Builder, Flow Builder, Workflow Rules, Validation Rules, and others. I like this a lot, because it means that one problem has many solutions, and the best one usually means the ability to avoid code. There have been cases when some developers unhesitatingly write a mountain of code to implement functionality that could have been achieved by checking a couple of checkboxes in configuration files. Anyway, in the first two months, I fully immersed myself in the platform, and then I got a job offer. The first three months on the job I was freaked out, but then I got drawn in. I completed a couple of Salesforce certifications: App Builder and Platform Developer 1. Then everything fell into a routine: I worked exactly a year and a half at my first company (I am very grateful for that time). Then I received a LinkedIn invitation from someone in London, from whence I am now writing this article. My new company works with Vlocity, which is installed on Salesforce in a managed package, i.e. it is essentially a platform on a platform. Vlocity provides many additional tools for customization and creating user interfaces. At the moment, only 20-30 percent of my work is associated code, the rest is all about these tools I mentioned. But I'm basically very pleased. I recommended CodeGym to all my friends who may be interested in retraining. This is an absolutely irreplaceable tool. Some of the tasks make your brain melt. I spent 2-3 days on them. This is a very good way to get experience. By the way, in my work, I encountered such tasks rather rarely. The bottom line is that retraining from a social worker to a developer required intense effort, but it still wasn't like climbing Mt. Everest. My advice: study hard, but don't overdo it (don't damage your health). 1-2 hours a day is not enough. 6 is a lot. 3-4 is probably just right. If you are able to quit and focus on retraining, I think you should quit. After some initial attempts, I found that combining work with retraining was not an option for me. My family was not happy that I quit, but in my case the risk paid off. If you have savings, you can regard using them here as an investment in yourself. Research all the major consulting companies. In non-crisis times, they have many projects, they need a lot of developers, they are ready to give newcomers a chance, and they often arrange for the training themselves. Most importantly, it is not your education that matters to them, but rather your skill. If you are capable, nobody will chase you out of the consulting industry. Well, that's about all: I wish you good luck in your first steps in the IT world.Retraining on steroids - 2Chew on all the CodeGym tasks in order. Don't dawdle and skip to later topics. Practice here will get your thinking back on track. If that happens, then believe me: you'll feel right at home not only in Java, but also in any other language or technology.