About
Hello! I'm Md Nasim Sheikh, a Software Developer with a strong foundation in Computer Science and Engineering. My passion lies in building robust systems and applications, exploring the intricacies of various programming paradigms, and contributing to impactful projects. I thrive on learning new technologies and solving challenging problems, always driven by curiosity.
I have hands-on experience across a wide spectrum of programming languages, from compiled languages like C, C++, Java, and C# to interpreted languages like Python and R. I also possess experience with pure functional languages such as Racket and Lisp, and have delved into the world of assembly language (x86/ARM), particularly in the context of system programming.
Experience
Jr. Developer (SAAS) | 2022
I gained initial professional experience as a Jr. Developer, focusing on SAAS development for several months. While my time in this role was brief due to prioritizing academic pursuits (HSC and university admissions), it provided valuable exposure to a professional development environment.
Freelance Software Developer | 2020 - Current
During this period, I worked as a freelance Web Developer, Software Engineer, and even contributed to Operating System kernel development. I successfully completed over 150 projects on various freelancing platforms, collaborating on both individual and team-based engagements, honing my skills across diverse domains.
Skills
Programming Languages
Technologies & Tools
Achievements
- 2024: Published research on "Linux Kernel Scheduling Algorithms."
- 2024: Published research on "Sentimental Analysis of Customer Reviews."
- 2022: Finalist in the ICT Olympiad Bangladesh.
- 2021: Achieved Expert status on Codeforces (Competitive Programming).
- 2021: Participated in the National Camp of the Bangladesh Olympiad in Informatics.
Selected Projects & Contributions
Here are some of my recent and notable projects, showcasing my skills and interests:
StephansOS:
- An operating system prototype built from scratch using C and x86 Assembly. The operating system features functional multi-tasking, a file system, a user shell, basic networking capabilities, a custom GCC OS-specific compiler, and a display driver.
Linux Kernel Modification & Addition of Syscalls:
- Explored and modified the Linux Kernel (v2.4.27), focusing on system architecture, x86/x86_64 Assembly, and interacting with the GNU Toolchain. Implemented custom system calls.
Linux Kernel Scheduler Implementation (Stride Scheduler):
- Extended the Linux Kernel by implementing and integrating a custom Stride Scheduler. This involved deep understanding of kernel process scheduling and kernel modification techniques.
Research on Linux Kernel v2.4.x:
- Conducted in-depth research into the Linux Kernel's architecture, including its File System, CPU Architecture interaction (via Assembly), Scheduling Algorithms, and Process Queue management. This research culminated in a publication.
1OSP (Internet FirstOS):
- A significant personal project involving the development of a basic operating system kernel from scratch for x86_64 architecture. Covered CPU Architecture, C/C++ compilers/linkers, File Systems, basic Networking, CI/CD, and build tools.
Racket Text Editor for Windows OS:
- Developed a functional text editor application for Windows using the Racket programming language, demonstrating functional programming principles and utilizing extensive documentation.
Racket Shape Drawing Application:
- Created an interactive drawing application for Windows using Racket's Big-Bang framework. Featured multi-shape drawing, real-time animation, and object-oriented design principles for handling interactions.
Academic and Admission Care (E-Learning Platform):
- Developed a full-stack E-Learning platform using Next.js and Firebase. Features included authentication, private routing, a code editor, note-taking, live classroom functionality, and SEO optimization.
Relational Database and Management Software:
- Built a relational database system and a Windows management application using Java GUI. Implemented OOP principles, encryption, authentication, a DB viewer, and utilized SQL, following an AGILE methodology.
Bus Route and Booking Management Software:
- Developed a comprehensive management system with a custom database for bus routes, driver management, and ticketing. Designed as a management system using AGILE principles.
C Multi-Threaded Client-Server Application:
- Created a network application demonstrating multi-threaded communication between clients and a server in C.
Learn How To (Blog):
- Developed this blogging platform using Next.js, MDX for content, Tailwind CSS for styling, and leveraging GitHub as a CMS. Focused on SEO best practices.
wooeneStudios (Company Portfolio):
- Designed and developed a company landing page/portfolio using React.js, Next.js, and CSS, incorporating designs from Adobe suite (XD, PS, AI) and integrated with a CMS.
Personal Resume/CV Website:
- Created a personal portfolio site using HTML, CSS, and JavaScript, managed via a CMS.
- 📫 How to reach me ...
Feel free to connect with me through any of the platforms below: