Pyramids of Giza, Cairo, Egypt

Why I became a software developer

In my teen years I mostly liked two things, Drawing and Computers. I used to get high grades in mostly everything, even the subjects I didn’t like like English and math. But what I really liked to do was drawing. I was not the best in my class, maybe second or third best but I liked the feeling of drawing and coloring.

Like most boys in my age I also liked to take things apart and putting them together again. Understanding what’s inside our TV, Radio, my little toys was one of my interests. I liked the idea of building new shiny things. Solving problems and making other people lives better. I wanted to be a famous inventor when I grow up. Although drawing was a beautiful thing but becoming an inventor was the thing I wanted.

Coming from a middle class family, getting material and tools wasn’t an easy thing so that was a barrier to experiment, so recycling toys parts and electronic parts and reusing my father home tools was the only thing I can do. my allowance back then was 0.5 EGP. That can’t buy anything but a bag or crispy potato ships.

Back then we didn’t have a personal computer. A friend of mine invited us to play on their PC on Thursday. His father was very friendly and he’s the one that invited us, he was a computer engineer for a large company back then. I really appreciate that now. He was the reason I loved computers.

My friend PC was a windows 98 second edition, and they had another one with windows 95. Both has many games that we enjoyed playing them 2 players at a time on the same keyboard. I loved computer games. I loved writing in Microsoft word.

Then in 8th grade the ministry of education added a new subject to the 6th grade. It was “Computers” they learned using windows and writing HTML. My class didn’t have this subject so I found a book thrown somewhere in school back then and tried every HTML tag I found there. It felt really good and I wanted more.

I was saving my allowance every day for 3 days a week to get a weekly comics magazine called “Bolbol” a beautiful magazine with serialized comics stories mostly from French comic houses translated to Arabic. One day when I was getting an issue from the newspaper stand I found a magazine called “Language of the age” it was a computer magazine with a free CD. it was issued monthly and it costs 7EGP. I decided to get this magazine and I started saving my allowance for it every month. It took me 14 days every month to save for it. That’s one day I can spend my allowance on potato ships or any other sweet product and another day saving for the magazine. I managed to buy it every month non-stop for 5 years until I finished high school. I had my desk drawers filled with more than 60 of these magazines and their CDs.

During high school years I still didn’t have my first PC, So I was using my allowance money to get to a computer shop. I used to browse Geocities websites and learn about HTML, CSS and JavaScript I liked the idea of building web pages that other people can visit and use. This is where I started my first website on Yahoo Geocities, It was bookmarks website that hold links to other interesting websites I liked categorized by topic.

I fell in love with the idea of programming, Making applications and web pages that can change and react to clicks and mouse movement. I still remember this script that moves couple bats around your cursor in elliptical orbit while bats are flapping their wings. I wanted to do that and other beautiful things with this JavaScript and HTML thing I learned.

I spent alot of money and time doing that in high school and when they had us choose between 2 subjects: Drawing/Sculpting or Computer programming I choose programming. After school I wanted to do that for life. I want to invent these computer programs and websites that are very beautiful and useful for everyone.

At high school they taught us Microsoft Visual Basic 6.0 this is where I was a regular visitor to the computer lab, I learned also Macromedia Flash 5.0 there. built my first simple applications. learned mixing music in Fruity loops and many other applications that a demo version of it was in the magazine CD I tried so many of them. Deamweaver, Swish, Freehand, Microsoft movie maker. many others were in this CD and I installed most of them and used them. I wanted to do that, I wanted to create applications like these. that was my passion, I got the highest grades in this subject every time on the whole school. One teacher from the computer lab was very generous and gave me a subject he studies which included my topics: ASP classic, XML, XSLT, XPATH and ECommerce. I made a photocopy for myself and studied it and experimented in the computer lab.

At home we got our first PC in my last year in high school. I loved this PC, played alot of games and spent alot of time in dreamweaver and flash drawing and programming. all of that was offline until the home internet companies were introduced to the public and wasn’t just for internet shops. back then it was very expensive so I had to connect to get something I need and disconnect right away. The cost was per minute like calls. and while we’re using the internet we can’t receive or make a phone call so I had to be very conservative.

After high school I wanted to continue my studies in this field. The faculty of computer and informatics wasn’t a known thing to anyone. I know about it just because I was interested in the topic. but my parent didn’t like the idea of joining an unknown faculty. So I had to join the Engineering faculty. It was excruciating two years in my life I had to switch after that to the Faculty of computers and informatics. it was in another city so I had to live in students dorms and live off of 70EGP per week including my bus tickets between two cities, transportation and any other thing I need.

During my two years in the Engineering school I was learning PHP and SQL I learned a lot and landed my first freelancing job building a website for a local football fans club. then I landed a part time job at a local company building websites as a backend developer. I enjoyed doing that and through my 4 years studying computer science I did this part time job. That helped supporting my expenses.

During my studies I met a lot of great people made friends with a lot of them. Learned the theory and the main topics, I didn’t think what I was studying was useful as it didn’t translate to any practical experience. But every year after graduation I feel that was really useful for my career. I appreciate the effort my professors did to teach us the theories and the basics instead of the tools. I believe now that this is the right approach to put a solid foundation for a software engineering career.

During this journey I still had this idea in mind: I want to build stuff people use and improve their lives. Building software felt like inventing without material. I just need a computer and to focus and learn to build better software, money is not a limit to build something useful for everyone.

Next years were the usual life of a developer. Moving from one company to the next building software that’s required by the business. But the shiny part of my career is my side projects. I loved building software in my leisure time. At any point of time I must be working on a side project.

Working as a software engineer paid off pretty well financially, And I was one of these lucky engineers that’s doing it because they love programming. What’s keeping me alive is this hope that one day I’ll build something that will improve the lives of millions of people.