
Dagim Feyessa Kayemo
Verified Expert in Engineering
Back-end Developer
Addis Ababa, Ethiopia
Toptal member since May 13, 2022
Dagim is a senior back-end developer with over seven years of industry experience. He specializes in building customized management systems with robust reporting and .NET applications. Dagim can handle the latest tech stack implementations and maintain legacy systems.
Portfolio
Experience
- Back-end - 8 years
- C#.NET - 8 years
- REST APIs - 7 years
- SQL - 4 years
- Entity Framework - 4 years
- API Integration - 4 years
- React - 3 years
- SignalR - 2 years
Availability
Preferred Environment
Windows, Teams, Slack, Git, Jira, Azure
The most amazing...
...thing I've developed is a GPS tracking system, handling millions of records with back-end communication implemented using SignalR for real-time updates.
Work Experience
Full-stack Developer
Kalon Creative, LLC
- Implemented an integration to a templating 3rd-party application to allow users to create customized artworks from templates inside their pre-existing system instead of going to an external system.
- Executed an integration to a 3rd-party call tracking and management service so that users can manage customers' tracking phone numbers from their own system.
- Built a system to allow the client to track customer email addresses with issues on SendGrid.
- Implemented a redesigned system allowing customers to review artwork created by the company.
- Added an implementation to display release notes on the system.
Full-stack Developer
Kalon Creative, LLC
- Built a full system for an international media company to simplify their complex legacy application into a web application, allowing customers to schedule and manage their media easily.
- Developed an implementation using the Azure Storage platform to upload large file sizes (50GB and higher), allowing users to resume and continue.
- Architected a Windows application with an installer to run locally and act as a bridge between the web application and the main system.
- Developed an implementation to synchronize uploaded media to the local Windows system based on the user and organize the media in playlists.
- Implemented an OpenID connect authentication flow using OpenIddict.
- Created a real-time communication flow between client devices and the web application to synchronize any change, such as asset deletion or scheduling assets.
- Replicated a media scheduler timeline using vis-timeline, which is always synchronized with the timeline on the older application with complex zooming, dragging, and interactions.
Senior Back-end Developer
Excellerent Technology Solutions
- Split the Oracle database table into three tables and wrote a script to migrate data to the new table.
- Generated an Azure function triggered by a Blob storage entry that read the Excel files and imported the selected data into the Oracle database in batches.
- Wrote unit tests for both the .NET framework and .NET Core project to validate the proper working condition of the system.
- Created stored procedures for generating new reports.
- Generated files that are submitted for regulation purposes from the database and scripts.
Senior Full-stack Developer
50 Lomi
- Developed an application used by the Ethiopian Ministry of Agriculture to monitor and track the effectiveness of their training. Currently, it is rolled out in over four regions of Ethiopia.
- Added chat feature to allow communication between offices and trainees for a training management system. The unique feature of the chat application was that the trainees chatted as individuals, while the offices had a shared chat user.
- Implemented an MQTT server using EMQX for training management to allow people to get data on their mobile devices when there is an intermittent connection in rural areas.
- Applied a completely configurable notification feature for an operation management system. The notifications are condition-based and defined by the user.
- Implemented a fully user-configured data form for an operation management system. The custom data were added as a remark for each task. It had full-form features such as validation and data types.
- Made implementation of user-defined report generation for an operation management system that was fully customizable by generation LINQ queries from expressions.
Senior Back-end Developer
50 Lomi
- Created a full back-end API using pure SignalR commands without requiring any HTTP calls for a blazing fast vehicle tracking system.
- Migrated data from MySQL to MongoDB for a vehicle tracking system with hundreds of thousands of positional data records.
- Implemented a complete back-end API using gRPC, WebSocket, and Protobuf for a prototype eCommerce application.
- Created a simple Telegram bot for a therapy clinic, which allowed two-way user hidden communication between the clients and the therapists.
- Implemented caching using Redis for an eCommerce back end.
Back-end Developer
50 Lomi
- Added real-time schedule update for an operation room scheduler using SignalR, so that family members and hospital staff can see the scheduled and ongoing surgeries status.
- Implemented a prototype 2-factor authentication, using MIFARE cards for a web application as additional security.
- Developed the back end for a restaurant management system, including handling orders and inventory management.
- Added an integration to connect to an order printer for a restaurant system.
Experience
Content Management System
• The capability to manage huge 8K video asset uploads.
• Keeping the local client application and the web CMS system synchronization in real time.
Energy Billing System for a Belgian Company
My primary role was to generate reports, integrate them with government web services, and fix client issues.
Training Management System for the Ethiopian Ministry of Agriculture
I was the project lead and communicated with the client to deliver their desired features.
Vehicle Tracking System for an Ethiopian Company
I was the back-end developer handling communication between the GPS devices and the server and designing and managing the data inside MongoDB and PostgreSQL.
Shola | eCommerce Platform
The database that was used was the foundation database, and the communication mechanism used was gRPC with protocol buffers.
The main reason for this selection was to reduce the storage size and speed up the application. The platform also had its own advertisement system to allow the clients to advertise on the platform.
Education
Bachelor's Degree in Computer Engineering
Addis Ababa Institute of Technology - Addis Ababa, Ethiopia
Certifications
Azure Fundamentals
Microsoft
Azure Data Fundamentals
Microsoft
Skills
Libraries/APIs
Entity Framework, LINQ, REST APIs, Windows Forms (WinForms), SignalR, Telegram Messenger API, MediatR, Protobuf, React, AutoMapper, Azure Blob Storage API, Sockets, ABCpdf, Yup
Tools
MQTT, Git, Microsoft Unit Tests, Syncfusion, xUnit, GitLab, LINQ to SQL, Logging, Azure Application Gateway, C#.NET WinForms, Dapper, RabbitMQ, Bitbucket, Wix Installer, Autofac, Hangfire, Slack, Azure App Service
Languages
C#.NET, C#, SQL, JavaScript, HTML, HTML5, TypeScript, XML, CSS
Frameworks
.NET Core, .NET, ASP.NET Core, ASP.NET, Blazor, Entity Framework Core, NUnit, Material UI, ASP.NET MVC, .NET 4, Newtonsoft JSON, gRPC, Bootstrap, Tailwind CSS, ASP.NET Web Forms, Swagger
Paradigms
REST, Object-oriented Programming (OOP), Unit Testing, API Architecture, Azure DevOps
Storage
SQLite, MongoDB, Redis Cache, Microsoft SQL Server, PostgreSQL, Data Synchronization, Azure Blobs, OrientDB, FoundationDB
Platforms
Azure, Oracle, Azure Functions, Oracle Database
Other
Repository Pattern, OOP Designs, API Integration, Back-end, Service Workers, APIs, Windows Services, Full-stack, Architecture, OAuth, Front-end, Bootstrap 4, Tus.io, Timelines, Loggers, OpenID Connect (OIDC), Azure Service Bus
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring