Software Engineer | Database Architect
1995 - PRESENTFreelance- Developed accounting software that includes most details for general accounting for establishments. Included the archive data and developed reports from customer or supplier statement and trial balance. The system has multi-currency features.
- Built stock software with a multi-warehousing feature. The reports included item movement, item value summation, gross profit per item, item category, customer, customer category, and date period.
- Developed building construction software that computes the cost of a building and follows apartment sales and vouchers of customers for installment payment. Created numerous printable reports.
- Created and implemented dental lab software that followed each patient case for accounting data and clinical data. Developed many printable reports per account, doctor, or patient.
- Developed a billing system for central using C# and T-SQL to keep track of call data like call duration, dialing extension, or dialed number.
Technologies: C#, Microsoft Access, T-SQLResearch Assistant
2018 - 2019American University of Beirut- Implemented research using GPU and compared it to a Matlab implementation of near-optimal control of fuel cell hybrid electric vehicles using single-step dynamic programming.
- Leveraged multi-core processing to implement the algorithm quickly enough to be considered real-time results.
- Compared results between the CUDA and Matlab versions to ensure that they were exact.
Technologies: CUDA, C++MATLAB Lab Instructor
2016 - 2018American University of Beirut- Assisted the students in using the MATLAB engineering tool to successfully finish their lab assignments. Supervised the class and explained given assignments.
- Helped students by answering all questions and encouraging them to understand the objective of the lab.
- Programmed my own solution of the assignment to correct all the students' assignments.
Technologies: MATLABC++ Lab Instructor
2016 - 2018American University of Beirut- Explained the assignments and supervised the class.
- Helped students when needed and answered all lab-related questions.
- Corrected submitted assignments after implementing my own version.
Technologies: C++Software Developer | Research Assistant
2016 - 2018Freelance- Developed a parallel programming software using CUDA for the NVIDIA GPU that implements the Canny edge detector.
- Combined multiple stages of the Canny edge detector in one kernel to achieve better speed up, compared to other parallel programming software.
- Developed a parallel kernel for the last stage. The task was particularly challenging and time-consuming.
Technologies: C++, CUDACUDA Lab Instructor
2016 - 2018American University of Beirut- Supervised the lab and helped the students implement their lab assignments that included parallel programming using CUDA, NVIDIA's GPU programming language. It was a graduate course lab.
- Studied and optimized the architecture of GPU to make the software performance faster.
- Used different CUDA tools that reflect memory and CPU usage to achieve better performance.
Technologies: C++, CUDASoftware Developer
2015 - 2016Freelance- Implemented billing software for Panasonic Phone Centrals using C# as an interface language and Microsoft SQL Server as the database language.
Technologies: SQL Server 2012, C#Software Developer
2012 - 2014Freelance- Implemented a SQL Server database that implemented views, stored procedures, and functions built on an old COBOL system of a hospital.
Technologies: SQL Server 2012, C#