Omar Enayet, Developer in Cairo, Cairo Governorate, Egypt
Omar is available for hire
Hire Omar

Omar Enayet

Verified Expert  in Engineering

Software Developer

Location
Cairo, Cairo Governorate, Egypt
Toptal Member Since
August 16, 2015

Omar creates, develops, and maintains distributed applications using .NET, C++, and Java for medium-to-large enterprises. His expertise expands through desktop, cloud, including AWS and Azure, and Flutter mobile applications. He's also specialized in chatbots, where he worked on multiple projects using Dialogflow and the Microsoft Bot Framework. Omar has a master's degree in computer science and is also experienced with text mining.

Portfolio

Financial Software Company
Python 3, SQL, Humio, RabbitMQ, Oracle, PostgreSQL, C++
Peer Software
.NET, Standard Template Library (STL), Spring, Java, C++, HTTPS, Eclipse...

Experience

Availability

Part-time

Preferred Environment

Linux, Git, Subversion (SVN), Eclipse, Visual Studio, Windows

The most amazing...

...project I've led and co-developed was a distributed enterprise application covering different web, desktop, cloud, and mobile technologies.

Work Experience

Senior Software Engineer

2022 - 2023
Financial Software Company
  • Worked as a back-end engineer on a pipeline to retrieve information associated with millions of incoming daily transactions.
  • Used Python 3, C++, PostgreSQL, Oracle, RabbitMQ, and Humio.
  • Participated in recruiting new hires and attended financial courses.
Technologies: Python 3, SQL, Humio, RabbitMQ, Oracle, PostgreSQL, C++

Software Engineer

2022 - 2022
Electronic Arts
  • Implemented features and fixes for the game-side online service codebase in one of the leading AAA first-person shooter games.
  • Performed daily testing of an AAA first-person shooter game to uncover issues.
  • Enhanced the integration testing process of the game-side online services codebase.
Technologies: C++

Software Development Lead

2019 - 2022
Peer Software
  • 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.
Technologies: .NET, Standard Template Library (STL), Spring, Java, C++, HTTPS, Eclipse, Visual Studio, Azure Blob Storage API, Amazon S3 (AWS S3)

Software Engineer

2018 - 2022
Toptal Clients
  • Developed two Flutter mobile applications in the telecommunications field.
  • Developed a chatbot using Dialogflow with a client on Flutter and CakePHP on the server side.
  • Constructed an FAQ chatbot via Dialogflow, linking it to a web service to handle customers' requests and send replies via SMS.
  • Built a customer service bot for an eCommerce company, used the LiveChat chatbot platform to achieve that, and integrated the bot with Shopify websites.
Technologies: Dart, Flutter, CakePHP, Dialogflow, Chatbots

Freelance Software Engineer

2018 - 2019
OpenAVN
  • Conducted work on the antivirus back end hosted on AWS. Used Amazon Cognito, API Gateway, AWS Lambda, AWS Identity and Access Management (IAM), and 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.
Technologies: Amazon Cognito, Amazon Web Services (AWS), Amazon API Gateway, AWS Lambda, Windows Presentation Foundation (WPF), C#, AWS IAM, Amazon DynamoDB

Freelance Software Developer

2018 - 2019
Toptal Clients
  • 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.
  • Performed work on the Microsoft Teams app that deals with call records. Used C#, JavaScript, .NET Core, Microsoft Graph API, and Azure.
Technologies: Amazon Web Services (AWS), AWS AppSync, AWS Amplify, Amazon Cognito, Azure, Flutter, FlashAir, Lua, Windows PowerShell, .NET, Microsoft Graph, Microsoft Teams

Software Developer

2015 - 2018
C&C Computer Solutions
  • 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-premise with object storage on the cloud. Supported Azure Blob storage and Amazon S3 storage.
Technologies: SSH, XML, REST, Delphi, C#, Java, RPC, C++

Software Engineer and Co-founder

2017 - 2017
Mandoubi
  • Developed two chatbots on the Facebook Messenger channel for restaurant table reservations and food delivery services. Integrated with many cloud services for NLP-AI, payment, image processing, fleet management, SMS, and email.
  • Developed and tested chatbots via the Facebook Messenger channel.
  • Developed a web portal for order data entry for food delivery software.
  • Integrated chatbots with cloud services for NLP-AI, payment, image processing, fleet management, SMS, and email.
  • Evaluated the chatbots in production on Azure by using various tools.
Technologies: Gmail, Twilio, Onfleet, Cloudinary, Api.ai, Facebook API, MongoDB, Azure, Microsoft Bot Framework, ASP.NET

Software Engineer

2016 - 2016
Crossover for Work – TX, USA – GFI Software
  • Developed enhancements and bug fixes for GFI Mail Essentials software for email security.
Technologies: CircleCI, Jira, Git, JavaScript, C++, C#, LDAP, IMAP, POP, SMTP, HTTP, DNS, ASP.NET MVC, Azure Active Directory, Visual Studio

Development Team Lead

2013 - 2015
NTP Software
  • Supported a Linux file server project for an existing commercial application that automatically archives files on a file server (Linux) to other storage platforms that 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 commercial enterprise software that involved modifying an 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 stored on-premises.
  • Built an application that automatically compresses files in enterprise storage hosts according to prespecified policies and uncompresses them on user demand.
  • Worked on a project that involved many components, including two back-end Windows services, a web server, a desktop client, Android client, an iPhone client, and a WP8 client.
Technologies: Linux, Android, ASP.NET, InstallShield, .NET, C++

Data/ML Engineer (Part-time)

2012 - 2013
Freelance
  • 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.
Technologies: R, Java, Webots, Weka, Eclipse, Microsoft Excel, Markdown, RStudio

Software Developer

2010 - 2013
NTP Software
  • 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 SharePoint files externally on external storage.
  • Contributed to features such as publishing, exporting, and importing files, as well as managing them in an online manner.
  • Worked on most parts of the project, including internal logic, GUI, multi-user testing, and publishing.
Technologies: Windows Communication Foundation (WCF), LINQ, ASP.NET, InstallShield, .NET, C++

Research Assistant

2010 - 2011
Nile University
  • Conducted research in software engineering for real-time strategy games.
  • Delved into test automation, software size estimation, and cloud computing.
  • Conducted research on applying machine learning in real-time strategy games.
Technologies: Azure

NTP Software VFM

A distributed application for the automatic and scheduled tiering (archiving) of files. Supports multiple NAS storage systems and both Windows and Linux natively. Work involved Windows services, web services, and websites.

Used Native C++.

My Blog: Omar's Brain

http://omarsbrain.wordpress.com/
My personal blog where I talk about algorithms and artificial intelligence.

Risha Laser Cutter: Control App

This was an open source project. I participated in the development of an Android (Xamarin) and C# desktop application which controls the Risha Laser Cutter via Bluetooth.

SharePoint Instant Migration

An application that works with SharePoint to externalize files outside the DB. Users can access/edit the files via SharePoint normally though the files may exist on remote NAS servers. Users can use the UI to import/export huge masses of files to NAS devices. Languages used: C# and C++.

Breast Cancer Classifier

This was a freelance project which I wrote in Java for a Ph.D. student, and used the Weka machine learning library. It used several supervised learning algorithms and applied cross validation and testing.

File Event Detector & Connector with EMC VNX & Isilon Devices

http://www.peersoftware.com/
Developed from scratch a C++ component (Unmanaged DLL) to register with EMC VNX & Isilon devices to get real-time file system events and also able to execute API calls & CLI commands on these devices. Supported both RabbitMQ & direct RPC communication with EMC CEE service.

This component is a major part of the peer software file management solutions.

File Event Detector & Connector with NetApp 7-mode Devices

http://www.peersoftware.com/
Developed from scratch a C++ component (Unmanaged DLL) to register with NetApp 7-mode devices to get real-time file system events and also able to execute API calls and detect connection problems.

This component is a major part of the peer software file management solutions.

File System Events Distiller

http://www.peersoftware.com/
A core component of peer software file management solutions. I developed it from scratch using unmanaged C++. It interfaces with different components (called connectors) to get file system events from different NAS devices (EMC VNX and Isilon, NetApp 7-mode or c-dot) or Windows servers. It gets a constant stream of events and distills the events out putting into consideration different event patterns that needs to be handled. The stream of distilled events gives the file management application the abstract file operation being performed.

Universal File Access

Using Android and iOS mobile applications, users were able to access their files residing on their company's file servers or NAS devices, securely and remotely from anywhere in the world. A WCF service serves the requests, an administration website is provided, an additional security layer was added.

Used C#, WCF, C++, Entity framework, LINQ, and ASP.NET.

Customer Donations Analysis for Charity Organization

Performed data pre-processing and analysis on a dozen of millions of records of SMS donations data. Analyzed the marketing campaigns, channels (such as TV, Radio, SMS, FB) and different causes (School Feeding, Feast Feeding ..etc.) that encouraged donators to donate. Performed RFM Analysis (customer value) using the donator data provided.

I used R for the analysis and Excel for providing reports and conclusions.

Published Paper: Intelligent Online Case-based Planning Agent Model for Real-time Strategy Games

[Abstract] Research in learning and planning in real-time strategy (RTS) games is very interesting in several industries such as military industry, robotics, and most importantly game industry. A recent published work on online case-based planning in RTS Games does not include the capability of online learning from experience, so the knowledge certainty remains constant, which leads to inefficient decisions. In this paper, an intelligent agent model based on both online case-based planning (OLCBP) and reinforcement learning (RL) techniques is proposed. In addition, the proposed model has been evaluated using empirical simulation on Wargus (an open-source clone of the well known RTS game Warcraft 2). This evaluation shows that the proposed model increases the certainty of the case base by learning from experience, and hence the process of decision making for selecting more efficient, effective and successful plans.

Languages

C#, C++, Java, Markdown, JavaScript, Python 3, Python, Visual Basic 6 (VB6), R, CSS, Prolog, HTML, Assembly, Lua, C++/CLI, Delphi, Dart, PHP, XML, ASP.NET Razor, Kotlin, SQL

Libraries/APIs

Windows Forms (WinForms), Windows API, Office 365 API, Facebook API, Standard Template Library (STL), LINQ, Libcurl, Google Cloud API, Google APIs, AWS Amplify, Azure Blob Storage API

Tools

Dialogflow, Visual Studio, InstallShield, Microsoft Teams, Confluence, Logging, Subversion (SVN), Git, Microsoft Excel, CircleCI, Onfleet, Cloudina, Jira, RabbitMQ, Microsoft Access, MATLAB, Weka, Microsoft Visual Studio, AWS AppSync, Amazon Cognito, AWS SDK, AWS IAM, Microsoft Graph

Platforms

Api.ai, Windows, Eclipse, Linux, RStudio, Amazon Web Services (AWS), Microsoft Bot Framework, Azure PaaS, Twilio, Apache Pig, Azure, Xamarin, SharePoint, Android, iOS, AWS Lambda, Oracle

Storage

Azure Blobs, Microsoft SQL Server, Azure Active Directory, MongoDB, Amazon S3 (AWS S3), Apache Hive, Azure Table Storage, Amazon DynamoDB, PostgreSQL

Other

Software Development, FlashAir, Windows Communication Foundation (WCF), RPC, Chatbots, Live Chat, SSH, Gmail, Webots, DNS, HTTP, SMTP, POP, IMAP, LDAP, Cloudinary, Algorithms, Machine Learning, Data Structures, Multithreading, Microsoft Graph API, Amazon API Gateway, HTTPS, Computer Science, Humio

Frameworks

ASP.NET, Flutter, CakePHP, .NET, ASP.NET MVC, Windows PowerShell, Spring, ASP.NET Web API, Boost, Entity, Hadoop, Razor Pages, Azure Bot Framework, .NET Core, Windows Presentation Foundation (WPF)

Paradigms

REST, Data Science, Agile Software Development

2016 - 2018

Master's Degree in Computer Science | Informatics

Nile University - Giza, Egypt

2006 - 2010

Bachelor's Degree in Computer Science

Ain-Shams University - Cairo, Egypt

OCTOBER 2019 - PRESENT

Reinforcement Learning - Prediction and Control with Function Approximation

University of Alberta | via Coursera

SEPTEMBER 2019 - PRESENT

Reinforcement Learning - Sample-based Learning Methods

University of Alberta | via Coursera

JULY 2019 - PRESENT

Fundamentals of Reinforcement Learning

University of Alberta | via Coursera

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring