
Marcel Popescu
Verified Expert in Engineering
.NET Developer
Târgoviște, Romania
Toptal member since September 15, 2014
Marcel is a senior developer with over 20 years of experience. He prefers back-end development, is great with algorithms, and prides himself on well-designed code. He has written an introductory book on TDD and is currently mentoring several junior programmers.
Portfolio
Experience
- Algorithms - 15 years
- SQL - 15 years
- APIs - 15 years
- C# - 15 years
- Agile Software Development - 10 years
- Test-driven Development (TDD) - 10 years
- ASP.NET MVC - 8 years
- .NET Core - 5 years
Availability
Preferred Environment
Visual Studio
The most amazing...
...program I've written automates an error-prone, three-day-long manual database replication down to a two-minute console app.
Work Experience
CEO/CTO
Renfield Software
- Developed a Web API portal interfacing between restaurants and delivery services.
- Developed a WinForms (desktop) application for transcribing and translating videos, using various AWS services, to help some of our employees who were not very proficient with spoken English.
- Wrote an inventory application for mobile phones, allowing users to record inventory levels by going into the warehouse and scanning the product labels. A report would then be generated and sent to the configured recipients.
Windows 10 App Developer
New Potato Creek Holdings LLC
- Developed a desktop app that allows customers to upgrade their service level.
- Created a web app that allows employees to be notified when a site falls behind on updates.
- Deployed the web app to a new AWS Lightsail instance and connected it to the internal databases.
Windows 10 Application Developer
New Potato Creek Holdings LLC
- Built a web application allowing company users to subscribe to a notification (configurable between immediate/hourly summary/daily summary) regarding locations that have not received updates recently.
- Developed a desktop application (used with kiosks) allowing customers to upgrade their subscription level when entering the car wash.
- Helped create an AWS VM and deployed the web application to it, ensuring it could not compromise the internal company network while still accessing specific queries from the SQL server.
Senior .NET Developer
Orion180
- Worked on an insurance application/MVC site, primarily on the rating engine, the part of the application responsible for calculating the insurance premium.
- Started working on integrating the application with third parties, as a provider of insurance quotes.
- Added reliable, automated tests to ensure that the hundreds of criteria used in calculating the insurance premium worked as expected.
Developer
Grab (via Toptal)
- Worked on a responsive Kiosk project supporting multiple restaurants (with different CSS/theming).
- Developed a responsive web site for ordering at airports or train stations.
- Improved the quality of the existing code, adding unit tests, and UI tests (using Selenium).
Developer
Quadrant.io (Investormill, Inc.)
- Built high-speed processing of large data files (up to 10 GB).
- Wrote code to split a file in chunks with the additional requirement that the split happens on a line end (since they were line-oriented text files).
- Facilitated multithreaded processing of large files without running out of memory.
- Processed the data while downloading it so that processing was over in 1m 33s for a file where the download alone took around 1m 27s.
- Made extensive use of unit tests.
Python and Java Developer
Bank of America Merrill Lynch
- Transitioned two internal projects from using SIC codes to NAICS, one written in Python and one in Java. The projects had an original estimate of six months. We managed to finish them in three.
- Generated new aggregation reports based on risk industry groups and sectors (based on the newly added NAICS codes).
- Added new permissions to enable finer control on who is allowed to make specific changes in the Java project UI.
- Optimized a query that was taking a couple of minutes on the DEV server down to ten seconds by using a combination of temporary tables and JOINs (we were not allowed to change the existing tables, not even to add indexes).
- Advised the rest of the team on design and testing issues.
Programmer
DeCare Systems Ireland
- Automated data replication from staging to production, changing a three-day, error-prone manual process to a two-minute automated one using SQL Server Data tools.
- Worked on the Avon shop for the Australia/New Zealand region, changing the existing workflow to support direct delivery and direct payment on the website. The front end is a C# MVC 5 application, and the back end is mostly WCF services.
- Integrated PayPal Express for the Avon Australia and New Zealand websites. This involved changes on both the client and the server sides.
- Uploaded media files to a CDN (content distribution network) service to improve response times and reduce pressure on our servers. I also had to use low-level Win32 APIs for paths longer than 260 chars.
- Rewrote an application to reflect the Avon UK branch's change of shipping company, which was hard-coded into their previous VB6 app. This required abstracting details about the label printer due to its unavailability at the start of the project.
- Added a health monitoring system to a complex network of WCF services. Since many web services were written in C# 3.0, this project didn't use technologies besides WCF and a JSON parser.
Branch Manager and Lead Developer
MicroBilt
- Switched the company's back-end applications in Delphi 5 to C#.
- Reduced writing WCF services to about a week through practical experience, assisted by my CodeSmith template written to get the common parts out of the way, and allow everyone on the team to focus on what was new in each application.
- Wrote the back-end application to create an in-house credit service for people who didn’t have a good standard credit report in a six-month project.
- Wrote Enhanced People Search, which uses a combination of data sources to create a comprehensive history of a person. We had to do a lot of optimizations on this service due to a large amount of computation involved.
- Developed the ID authentication service as a fraud-prevention measure using historical information databases to determine whether a person actually was who they claimed to be.
Experience
Simple MVC View Engine
https://github.com/mdpopescu/public/tree/master/SimpleViewEngineThe code was developed using TDD and uses Linq and reflection plus a dedicated parser. The engine can also be used independently of MVC (but alternative projects like SmartFormat might be simpler to use in those cases).
Fail-over Mechanism
https://github.com/mdpopescu/public/tree/master/FailoverAdditional information can be found at http://mdpopescu.blogspot.ro/2013/06/fail-over-algorithm.html.
Excel File Comparison
http://mdpopescu.blogspot.com/2013/06/comparing-excel-files-take-two.htmlTDD Book
Professional Development – Algorithms: Design and Analysis
https://www.coursera.org/course/algoDynamic Master/Detail Forms with Knockout
http://mdpopescu.blogspot.com/2013/07/posting-dynamic-master-detail-forms.htmlCertifications
Algorithms: Design and Analysis
Coursera
Skills
Libraries/APIs
LINQ, Moq, Windows Forms (WinForms), SignalR, NetDocuments API, Dropbox API, Reactive Extensions, jQuery, Entity Framework, REST APIs, iText, iTextSharp, Web API, Twilio API, WinAPI
Tools
C#.NET WinForms, Git, ReSharper, Visual Studio, Microsoft Team Foundation Server, GitHub
Languages
C#.NET, C#, T-SQL (Transact-SQL), TypeScript, HTML5, JavaScript, HTML, Delphi, SQL, Python, Java, CSS
Frameworks
ASP.NET Web API, ASP.NET MVC, .NET, .NET Core, ASP.NET, ASP.NET Core, .NET 4, ASP.NET Web Services, Knockout (Knockout.js), OAuth 2, NUnit, gRPC, Telerik Kendo UI, Bootstrap, Windows Presentation Foundation (WPF)
Paradigms
Desktop App Development, Agile Software Development, Test-driven Development (TDD), Windows App Development, Reactive Programming, ETL, ETL Implementation & Design, Management, Model View Controller (MVC)
Platforms
Windows, Windows Desktop, Telerik, Web, Amazon Web Services (AWS), Azure
Storage
Databases, Microsoft SQL Server, JSON, Web Forms
Other
Web Services, Algorithms, APIs, WCF Web Services, Telerik WebForms Controls, Multithreading, Telerik for WinForms, OAuth, CTO, Leadership, Technical Leadership, Software Architecture, Solution Architecture, Technical Architecture, NATS, Windows Communication Foundation (WCF), ZIP, Tesseract, Microsoft Azure, Optical Character Recognition (OCR)
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