Software Development Lead2019 - PRESENTPeer Software
Technologies: .NET, Standard Template Library (STL), Spring, Java, C++, HTTPS, Eclipse, Visual Studio, Azure Blob Storage API, AWS S3
- Developed applications for managing file storage across NAS devices and cloud storage, handling real-time file system changes and synchronization among different office branches.
- Documented the requirements and design. Handled support cases and production issues.
- Led a team of three developers working on different components.
Freelance Software Engineer2018 - 2019OpenAVN
Technologies: Amazon Cognito, AWS, AWS API Gateway, AWS Lambda, Windows Presentation Foundation (WPF), C#, AWS IAM, AWS DynamoDB
- Conducted work on the antivirus back-end hosted on AWS. Used AWS Cognito, API Gateway, Lambda, IAM, DynamoDB.
- Assisted in developing a client graphical user interface (GUI) for antivirus software using C# WPF.
- Led a team of three developers working on different technologies.
Flutter and Chatbot Developer2018 - 2019VoiceNation (via Toptal)
Technologies: Dart, Flutter, CakePHP, Dialogflow
- Developed two Flutter mobile applications.
- Developed a chatbot using DialogFlow with a client on Flutter and with a CakePHP on the server side.
- Developed an FAQ chatbot via DialogFlow.
Freelance Software Developer2018 - 2019Toptal Clients
Technologies: Amazon Web Services (AWS), AWS AppSync, AWS Amplify, Amazon Cognito, Azure, AWS, Flutter, FlashAir, Lua, Windows PowerShell, .NET
- Created an application that interfaces with a uEye Camera, parses an Excel sheet, and uploads images taken to SharePoint.
- Wrote a PowerShell script to upload Excel data to SharePoint.
- Engineered a LUA script on FlashAir to automatically upload files and photos mainly taken by a camera to SharePoint.
- Developed a handover bot that performs handover from any chat channel to Microsoft Teams. The Teams application included tabs to manage multiple clients threads and agents serving them.
- Built multiple parts of a Flutter application that displays sports news feed and statistics.
- Constructed a Flutter application from scratch with Kotlin and Swift channels to support an AWS back-end with AWS Cognito, Amplify, and AppSync.
Software Developer2015 - 2018C&C Computer Solutions
Technologies: SSH, XML, REST, Delphi, C#, Java, RPC, C++
- Created a component for connecting NetApp Filers with a file event-handling component.
- Created a component for connecting EMC, VNX, and Isilon with a file event-handling component.
- Created a component for distilling file system events used by file collaboration and synchronization software.
- Created a component for backing up and synchronizing files on-premises with object storage on the cloud. Supported Azure Blob storage and Amazon S3 storage.
Software Engineer and Co-founder2017 - 2017Mandoubi
Technologies: Gmail, Twilio, Onfleet, Cloudinary, Api.ai, Facebook API, MongoDB, Azure, Microsoft Bot Framework, ASP.NET
- Developed two chatbots on the Facebook Messenger channel for restaurant table reservations and for food delivery services. Integrated with many cloud services for NLP-AI, payment, image processing, fleet management, SMS, and email.
- Developed and tested chatbots via Facebook Messenger channel.
- Developed a web portal for order data entry.
- Integrated chatbots with cloud services for NLP-AI, payment, image processing, fleet management, SMS and email.
- Evaluated the chatbots in production on Azure.
Software Engineer2016 - 2016Crossover for Work – TX, USA – GFI Software
- Developed enhancements and bug fixes for GFI Mail Essentials software for email security.
Development Team Lead2013 - 2015NTP Software
Technologies: Linux, Android, ASP.NET, InstallShield, .NET, C++
- Supported a Linux file server project for an existing commercial application that automatically archives files on a file server (Linux) to other storage platforms which exist on-site or on the cloud.
- Developed a licensing enforcement project for an existing commercial application that automatically archives files from a file server or NAS device to another storage platform.
- Created a Windows add-on COM object used by Windows Explorer that shows sizing information about a directory and communicates with a Windows service.
- Programmed an application for data collection on a customer enterprise environment to be used by support.
- Supervised a project for an existing reporting tool for a commercial enterprise software that involved modifying a existing Windows service to send reported information to a web service and creating a website to preview and manage the reports.
- Built a distributed enterprise application that provides remote access to thousands of mobile clients with their files which are stored on-premises. The project involved many components, including two back-end Windows services, a web server, and a desktop client, Android client, iPhone client, and WP8 client.
- Built an application that automatically compresses files in enterprise storage hosts according to pre-specified policies and un-compresses them on user demand.
Data/ML Engineer (Part-time)2012 - 2013Freelance
Technologies: R, Java, Webots, Weka, Eclipse, Microsoft Excel, Markdown, R Studio
- Provided pre-processing, RFM analysis, and statistical reports on Egyptian charity organizations donors’ data.
- Applied reinforcement learning to robotics simulations.
- Developed machine learning applications used to enhance research conducted by PhD students on breast cancer patients’ data. Work included the use of neural networks, supervised learning, and other algorithms.
Software Developer2010 - 2013NTP Software
Technologies: Windows Communication Framework (WCF), LINQ, ASP.NET, InstallShield, .NET, C++
- Created a project with client-server architecture used by enterprises to guarantee the security of any client computers connecting to their storage hosts.
- Developed a product for automatically archiving files to secondary servers with a website for administration.
- Contributed to the development of a Windows enterprise application on a distributed environment responsible for managing of SharePoint files externally on external storage including publishing, exporting, and importing files as well as managing them in an online manner. Included a GUI. I worked on most parts of the project including internal logic, GUI, multi-user testing, and publishing.
Research Assistant2010 - 2011Nile University
- Conducted research in software engineering, test automation, software size estimation, cloud computing, and machine learning for real-time strategy games.