I love computers. I wrote my first program in Borland C++ when I was 11.By chance, I managed at my 15 to get a job where I did some HTML pages and later some PHP programming. Making websites wasn t as fun as making games in C++. Overall PHP didn t seem as fun as C++. I made all of my lab projects at the university in C++ with Qt, or wxWidgets or bare WinAPI. In fact, I improved the university the internal testing system on our Math/Physics faculty. I got a privilege to do labs in C++ Qt even when they were supposed to be C#. Also, in the university I came across Linux and never came back.Nevertheless, I couldn t get a position as C++ programmer and stuck in web development for 15 years. I focused on backend and took care the systems reliability where I could apply my passion about systems programming. I took all of the possible challenges related to the performance and reliability. In fact, it was awesome making graphs with Graphviz or plots/heatmaps in Grafana to troubleshoot the system. Lucky me, the industry turned to compiling languages. I switched from PHP/Python to Go/Rust and even C++. This brought me to AWS in Ireland, where I was working on the video streaming protocol.However, during my spare time I always worked on some graphical apps. Even now, I create a GUI app without a GUI toolkit. It s particularly fun working on the text rendering and interactions.I lost the job 1.5 years ago. I reflected that I want to try graphics programming or regret in the end of the life. I took my time to improve my knowledge in the area. Initially, I had a goal to make a clone of Space Invaders without any library. It took me to learn a fair bit of theory about the graphics stack on Linux. In addition, I had to improve my debugging skills (script-driven debugging in GDB is awesome) and data-oriented design. As a result, I missed my deadline and switched to SDL. That helped me complete the game. Of cause I wanted to share the game with my friends who are either on Windows or MacOSX. I learned how to port an SDL app from Linux to Windows. Wine helped a lot with testing. As MacOSX is closed platform, I decided to make a web version of the game based Emscripten.Based on the requirements from a few positions, I realized that having a few small projects including that clone of Space Invaders, experience in programming high-loaded distributed systems with a track of performance wins doesn t seem good enough for a Junior position from the graphics programming field. In addition, most of the positions implies that you work on Windows.Given all of the that, the question How does a backend developer switch to a graphics programmer? converts into three questions.1. What are the possible roles which involve graphics programming? I m aware only of the following: game engine programmer and technical artist. However, I assume there are programmers who work on GUI app like CAD systems, GIS, video processing tools, tools developers. What are the titles I can lookup? Nowadays, a GUI programmer is the programmer who makes dynamic HTML pages in JavaScript.2. What kind of project I need complete to be able to contribute to graphics software? To be precise, I created a plugin for UE4 for inverse kinematics, an app to visualize a Flamegraph based on Xlib, that clone of Space Invaders, currently working on a calendar GUI app based on SDL. I watched some interviews of game engine programmers who said that a ray tracer is a must-have. However, I assume that different roles in graphics programming require different staff. Also, I know about Handmade Hero. The author says that he would give enough material to make you to contribute to a game engine code.3. The question is perhaps for an HR. Nevertheless, there is no crime in hope. What should be in the CV given that I m an experienced backend developer? Do I include the projects I worked on my spare time to show my competence?