Ever since I got my first computer 20 years ago, I found myself asking ‘How do they do it?’ whenever I used any new software and played new games. The 14 inch magical box was so fascinating to me that I never thought it would take my whole childhood trying to make it do exactly the way I wanted.
As I grew up, I learned the beauty of making Software is that, the limitation always lies on my imagination and nothing else. It’s hard and can neither be learned overnight nor be learned completely in a lifetime. Every day I have the opportunity to learn something new and use that knowledge to walk through perfection.
I started with the QBasic programming language, then quickly moved to Visual Basic and I discovered myself playing with the Buttons, Drop Down Lists and other user interface elements that are used in software I use every day. Then I dug up deeper and started learning C++ with MFC," which are part of Windows SDK and eventually discovered smart ways of talking to the operating system through Win32 APIs along with translating them to be used with Visual Basic also. I was so interested in making system utilities that the first contract I got for a commercial project which was supposed to be a simple Point Of Sale, eventually became a full-fledged Windows Explorer Shell (Desktop, Start Menu replacement) with a point of sale system.
After working on Visual Basic for over 6 years, I moved to .NET Framework with C# programming language. I realized ‘making it in the right way’ should have the same priority as ‘making the thing right’ in the field I work. I started learning design patterns and techniques, learned when my code smells and how to fix them. I started reading expert’s blogs on different topics on software engineering and applied them along.
My undergraduate study life was the best period of my life. By this time, I had enough confidence to stand out from the crowd. I achieved two professional certification for both desktop and web application development expertise in my second year of undergraduate study. I also won my first award for my software F3Web in a software exhibition program arranged by my university. I got in touch with some industry leaders in our country and became an active member of the developer community. Working as an Academic Lead of Microsoft Student Partners in Bangladesh, I had a great time speaking in front of technology enthusiasts in seminars and taking workshops.
The last half of my undergraduate study had the biggest achievement as well as was the best learning period. I started working in group and lined up with ‘Team Rapture’ – a group of four members and participated in the world cup of Software Development, Microsoft Imagine Cup 2011. Our project became the national champion and eventually awarded People’s Choice Award in the world final in USA. We got coverage from numerous Electronic, TV and print media for our ground breaking idea that helps vision impaired people to walk and live their life like we do using a smartphone.
In recent years, I worked across platforms, with my quick learning abilities, I worked on smartphone platforms like Android and iPhone and had my work praised in the community. Along with that I worked full time as a software engineer in a local company in Bangladesh and utilized my architectural and technical knowledge to help develop few large scale software systems with my co-workers.
In 2014 I moved to United Kingdom to pursue Masters in Software Engineering. As a matter of fact, the text in this page was written as the "Statement Of Purpose" that had to be submitted as part of the application process. That was a good reason to fill up this page that had been left blank for months since the website was launched.
Since completing the MSc with a Distinction in 2015, I have been working as Software Engineer in London.
I don't know where life would take me next, all I want is coffee and problems to solve.
I have recently been exploring the Rust programming language and Linux operating systems in more depth. Rust's strong type system caught my attention. Despite having no prior experience in system programming, I decided to take a chance on my career and switch to using Rust full-time while working on a payments product in my recent job. In my limited free time, I have been experimenting with building various projects in Rust, ranging from simple command-line tools to more intricate applications. Some of these projects can be found on my GitHub profile.