The Pragmatist
Back-end development keeps me energized! Whether it’s wielding the power of PHP (my go-to language!) or exploring the possibilities of GoLang, I’m always learning and pushing boundaries. Add DevOps and Linux management to the mix, and I’m in my happy place, ensuring smooth deployments and a well-oiled infrastructure.
However, I don’t shy away from the front-end! My skills in frameworks like Vue.js and React allow me to build user-friendly interfaces that complement the back-end seamlessly. Data management is another area where I excel, allowing me to create well-organized and efficient applications.
Leadership and problem-solving are at the core of my approach. Leading a team to launch JeyServer.com (check it out!) further honed these abilities.
If you’re looking for a versatile developer who excels in back-end development, DevOps, and can contribute to the front-end, let’s connect!
Technical Skills Link to heading
PHP:
- Deep knowledge of PHP engine, ability to run and debug pure PHP code..
- Frameworks: Laravel (>= 5, < 11), Various Symfony Components, CodeIgniter 3 & 4
- Databases: Structured RDBMS (MySQL >= 5.0, MariaDB >= 5.5), SQLite, MSSQL, Non-Structured RDBMS (MongoDB)
- Testing: Unit and Feature Tests with PHPUnit
- Asynchronous Programming: Experience with Amphp and ReactPHP libraries
JavaScript (Backend)
- Languages: TypeScript (preferred), ES6 (highly proficient), ES5 (legacy code experience)
- Frameworks: Express, NestJS
- Dependency Injection: Tsyringe
- WebSockets: Building high-performance WebSockets with uWebSockets
Software Reverse Engineering
- Network Analysis: Wireshark (analyze network traffic and protocols)
- Reverse Engineering Tools: Ghidra, IDA Pro, Hex-Rays (deassemble and decompile PE/ELF files)
- Low-Level Programming: C/C++
- Debugging: GDB (debugging stripped executables)
- Decompilation/Deobfuscation: .NET/Java binaries
- System Knowledge: Deep understanding of OS memory management, system calls, multitasking
- Microprocessors: AVR, ESP, STM32
Linux System Administration
- Distributions: Extensive experience with Debian-based, Fedora-based, Alpine, TinyCore
- Containers: Docker, Linux Containers (LXC)
- Virtualization: VMware ESXi, KVM
- System Management: Troubleshooting network, hardware, software issues
- Security: Linux kernel firewall (iptables), Interfaces (csf, firewall-cmd, ufw)
- Server Configuration: High-performance web application server setup
Frontend Developer
- JavaScript Frameworks: Vue.js (2 & 3), React
- JavaScript Libraries: jQuery
- CSS Preprocessors: LESS & SASS
- Build Tools: Webpack, Gulp, Vite
- Component Libraries: Vuetify, React Bootstrap
- State Management: Vuex & Pinia, Redux
- Testing Frameworks: Jest
C/C++ Developer
- Strong Programming Skills: Proficient in C and C++ for developing robust applications.
- Cross-Platform Development: Ability to create applications that work seamlessly across different operating systems.
- UI Development: Experience using Qt 5 libraries for building graphical user interfaces (GUIs).
- Concurrency: Skilled in multi-threaded and asynchronous programming techniques for efficient resource utilization and non-blocking I/O operations.
- Data Storage: Experience with cache systems (Memcached) and databases (MySQL, SQLite) for data management.
- Network Programming: Skills in socket programming for network communication.
- Advanced Concepts: Experience using Promises and Defers for asynchronous task management.
Work Experiences Link to heading
Co-Founded and Led Growing Web Hosting Startup (CEO & CTO) - JeyServer.com (2014 - Present)
- Spearheaded the launch and ongoing growth of JeyServer.com (2014), a web hosting provider, leading a talented team of 12 individuals. We currently support over 12,000 WordPress sites on a daily basis, highlighting our expertise in web hosting solutions.
- Developed a custom billing system (Jalno) replicating the functionality of WHMCS, ensuring a seamless customer experience.
- Established a robust Linux shared hosting platform by integrating cPanel and DirectAdmin with our in-house billing system, serving multiple corporate clients.
- Built an automated VPS provisioning system leveraging VMware ESXi servers, offering functionalities similar to SolusVM and AutoVM. Our solution empowers us to provide high-quality VPS and dedicated server rentals along with technical support to our corporate customers.
IOT Full-Stack Software Developer (Contractor) - Hinics (Apr - Nov 2023)
- Collaborated with Hinics, an electronics company, to develop a smart and internet-connected relay capable of controlling other devices based on various conditions such as time, temperature, humidity, and manual actions.
- Designed the device using ESP8266 and created a mobile app for device management via WiFi-Direct, internet, or SMS.
- Developed an online dashboard for device owners to monitor and manage their devices, with additional support for sales and support teams.
- Wrote ESP8266 firmware using modern C++ code and contributed some libraries to the PlatformIO repository as open source.
- Developed the mobile application using Vue.js and Cordova, and server backend using Swoole and Laravel to create both RESTful API and a Protobuf-based websocket API.
- Integrated SMS800 for receiving commands from the app and sending responses.
Full-Stack Developer (Contractor) - Egerd (Apr - Oct 2022)
- Contracted as a Full-Stack Developer at Egerd, tasked with optimizing website performance and implementing efficient development practices.
- Received projects with components written in Python (Django), JavaScript (Express) for backend, and Next.js for the frontend, without any documentation or support from previous developers.
- Successfully optimized website performance, reducing load time from over 50 seconds to less than 3 seconds.
- Dockerized the project for improved deployment and management.
- Implemented CI/CD using GitHub Actions and extensively documented processes for future team members.
- Streamlined server infrastructure, reducing resource requirements from a 32-core CPU, 2 NVMe disks, and 64 GB of RAM to a modest 4 GB RAM and 2 core setup, resulting in significant cost savings.
Full-Stack Developer (Contractor) - AroseIrani (2016 - 2018)
- Contracted with INAF Company to work on the AroseIrani.com project, a directory listing website for Local wedding-related businesses.
- Developed the website using a custom PHP framework, HTML, CSS, and JavaScript.
- Implemented a RESTful API and thoroughly documented it for Android developers.
- Utilized MySQL for database management.
- Developed a TelegramBot for administrative and notification purposes.
- Designed and implemented a feature-rich admin panel for extensive website customization.
- Utilized FFMPEG to add watermarks to videos and re-render them in different qualities for improved user experience.
Project Lead and Developer - DChat (2012 - 2014)
- Conceptualized and developed DChat, a Chatroom application from 2012 to 2014. Utilized PHP, jQuery, and MySQL to create a high-speed, efficient platform tailored for ultra-low speed connections.
- Managed deployment of over 500 instances of DChat, which garnered viral attention, serving more than 30,000 end users across +20 servers.
- Developed rich features including public/private chats, stickers, file attachments, and robust admin functionalities.
- Recognized the need for a custom billing system and engineered an exclusive application to manage chatrooms and import data from the legacy script “E-Chat”. This billing system, also PHP-based, effectively managed all 23 servers.
- Introduced a groundbreaking feature named “Feed”, akin to modern-day Instagram, allowing users to post images, videos, text, and audio. Addressed storage limitations by implementing an object-storage solution similar to AWS S3.
Opensource Projects Link to heading
Web-Shot - A high-performance online screenshot service that captures webpages programmatically using a well-documented API. Built with Node.js, Nuxt.js, Prisma, and TypeScript for a robust and maintainable codebase. Developed in collaboration with the talented team at DNJ since December 2018.
- Website: web-shot.ir
- Repository: dnj/web-shot
Opensource Contributions Link to heading
SeaweedFS (golang):
- PR #4621: Unix Socket listener for S3 server
- PR #4907: add fs.mergeVolumes command into shell
- PR #4999: fs.mergeVolumes: Make a plan based on volumes size
- PR #5000: Fix shell ‘help’ for all commands
- PR #5003: fs.mergeVolumes: change dir to a named parameter
Badcow DNS (PHP):
Typescript DefinitelyTyped (typescript):
- PR #16055: Create definitions for jquery.growl
FlatLogic awesome-bootstrap-checkbox (js-css):
- PR #120: RTL Support
Laravel Swoole (PHP):
PHPStan (PHP):
- Issue #7886: Class scoping problem when define $this using @var
SftpGo (golang):
- PR #1053: Fix Empty directories for SeaweedFS
GoBackup (golang):