Asanka Wickramasinghe
Verified Expert in Engineering
Software Developer
Asanka is an experienced software engineer who is motivated and results-oriented. His software development experience includes but not limited to server/client design and development, user interface design, and protocol stack development. He is familiar with Agile methods used in software development. He enjoys working as an independent and as a part of a team and always delivers excellent results.
Portfolio
Experience
Availability
Preferred Environment
Git, Qt Creator, Windows, Linux
The most amazing...
...project I've worked on is the 'MouthWatch' application. I integrated a USB webcam with Qt libraries using Direct Show. Coded every module from the ground up.
Work Experience
Software Engineer
Relimetrics, Inc.
- Worked as a C++ engineer helping the development of ReliAudit, the main product. Used the latest C++ standards (C++17 and C++20) and features such as templates, Lambda functions, SFINAE, and Concepts.
- Created a build pipeline using CMake, Conan, and Jenkins in a multi-user environment. Got improved build times using build cache and Ninja. Developers were enabled with both Visual Studio (for Windows) and Qt Creator (for Linux).
- Worked as a JavaScript engineer to help develop the ReliUI web framework using React and Redux. ReliUI enabled users to create simple and complex web apps using a JSON schema.
- Maintained Relimetrics AWS and Azure accounts. Involved in SSL certificate handling (DigiCert and Let's Encrypt) and binary signing software (EV key).
- Developed HTTP client and server modules using the C++ Asio framework.
Software Developer
Freelance
- Created a screen snapshot software for a remote audit system. Used C++ and OpenCV in a Windows environment. The software ran as a Windows service, uploading screen snapshots to AWS S3 bucket. Used GitLab and Visual Studio.
- Developed a Windows app called "Snippets" that can load multiple contents (documents, photos, videos, webpages). Used C++ and Qt Creator in the Windows environment.
- Created a PHP back end for an Australian internet provider for ADSL service eligibility. Worked with a SOAP API to pull data for a given customer address. The system ran on an AWS Linux server.
- Integrated a hardware camera to a remote dental health application. Worked with camera drivers and pulled data from the camera to the application using C++ in a Windows environment. Used Gitorious and Visual Studio.
Software Engineer
AddressPro, LLC
- Set up FreeSwitch installation on AWS instance and connected SIP trunks. Worked with SIP provider to resolve connection parameter problems.
- Implemented a dial plan that can send and receive Fax. Preliminary tests were done using command line tools.
- Created a complete POC with REST API to send and receive fax. Demonstrated using multiple fax numbers.
Qt Developer
Simulations Plus
- Worked on UI side of the main simulation product (GasgroPlus) using Qt/C++. Created various UI panels from design mockups.
- Created complex custom widgets and Qt Creator plugins for those widgets. Helped create custom Qt tables with header widgets.
- Helped implement model/view architecture for the main product. Used the latest C++ features (templates, Lamdas, and SFINAE).
Senior Associate
Cognizant
- Designed and implemented the TV GUIDE User Agent app build pipeline build system. Used Maven and Jenkins tools and technologies.
- Worked as a DevOps Engineer for Charter Communications. Supported EBIF Application infrastructure in their Production Markets. Worked with Linux, PHP, and Java technologies.
- Designed and developed Video on Demand system load tester. Worked with the APIs of the VOD vendor to develop a load-generating system to test the load handling of the system. Used C++, JavaScript, and HTML technologies.
- Worked as a DevOps Engineer for Charter Communications CTEC Lab. Looked after infrastructure for the QA and testing team. Developed tools to be used to carry out day-to-day activities. Worked on Linux systems.
Support Engineer (Dev Ops)
Charter Communications
- Supported a TV guide platform for the lab environment which included implementing the monitoring tools using C++, Python, and JavaScript; worked with Tomcat, Cassandra, and Oracle technologies.
- Contributed to the software testing and bug reporting process; used Jira as the incident reporting tool.
- Trained newcomers with the technology stack used in the product line; also created the training documents.
Software Developer
University of Western Ontario
- Designed and implemented the UI for an image processing software used for AI training.
- Implemented image processing algorithms in C++ language using OpenCV.
- Integrated different systems of image processing pipelines.
- Wrote test cases covering various scenarios and tested software.
- Managed software releases with versioning and dependency managing.
Core Network Engineer
Dialog Axiata PLC
- Implemented the SIGTRAN protocol stack, a health check system for production servers, and customer care software.
- Prepared RFPs for new products to ensure interoperability of different vendors and the latest GSM standards.
- Provided Linux server administration, including operating system updates and system backups.
Experience
Snake Game Implementation
MouthWatch' Client Application
https://www.mymouthwatch.comDi-Centric Chromosome Identifier
Skills
Languages
Python, C++, JavaScript, C++14, C++17, C, Embedded C++, Java, SQL, PHP, QML
Frameworks
Qt, Qt 5, Express.js
Libraries/APIs
React, React Redux, PySide, Node.js, OpenCV, Win32 API
Tools
Git, Qt Creator, Conan, Bitbucket, CMake, RabbitMQ, GitLab, MATLAB, Jenkins, FreeSWITCH
Paradigms
REST, Object-oriented Programming (OOP), Desktop App Development, Refactoring, DevOps
Platforms
Amazon Web Services (AWS), Visual Studio Code (VS Code), Windows, Linux, Arduino, Docker, Mobile
Other
GNU, Boost.Asio, Back-end, APIs, Algorithms, TCP/IP, UDP, Graphical User Interface (GUI), User Interface (UI), Front-end, Network Stack, 3GPP, SIP, Session Initiation Protocol (SIP), RTP, GSM, 3G, Video on Demand (VOD), Models, Computer Vision, Games, Gaming
Storage
Redis, MySQL, MongoDB, Cassandra
Education
Master's Degree in Software Engineering
University of Western Ontario - Ontario, Canada
Bachelor of Science (Hons) Degree in Electronic Engineering and Telecommunications
University of Moratuwa - Sri Lanka
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