Miguel Hughes
Verified Expert in Engineering
Software Developer
Miguel has a wide range of experience in various areas and languages, but his strongest language is C#. He enjoys coding just like people enjoy solving puzzles or sudoku magazines. He believes that software development should be fun and exciting. Miguel enjoys learning new skills and is an open, respectful, and polite developer.
Portfolio
Experience
Availability
Preferred Environment
Postman, SmartGit, Sublime Text, Visual Studio
The most amazing...
...project I've worked on is a multi-server, multi-threaded transaction processor. I was one of the designers and we built it from scratch.
Work Experience
Front-end Developer
Freelance
- Built a clone of the popular Slack app: Miguelhughes.github.io/slack-clone. It uses the useState hook to keep the state, the useEffect hook for side effects (scrolling to the bottom of the window upon activation), and only CSS for the layout.
- Developed a shopping app: Miguelhughes.github.io/shopping-app. Quantities can be updated in from the cart and totals are updated instantly in the rest of the app. The item component is re-used in both views, using the Children feature.
- Built also a Reddit clone, a Pinterest clone, and a Hacker News clone; more information can be found at Miguelhughes.github.io/react-showcase.
.NET Developer for Several eCommerce Projects
Mozzo LLC (via Toptal)
- Implemented a database resource provider to provide customizable and translatable terms from database (i.e., some clients use the term "item" for inventory while others use "material"). More details can be found in my Experience section.
- Designed and implemented a reusable generic entity importer to add or update rows from Excel files using OpenXML.
- Sponsored and implemented using table-per-type inheritance in Entity Framework which maps to different tables in SQL server, and actual inheritance in generated entities (using database first approach). More details can be found in my Experience section.
- Built a JavaScript library that extends JavaScript datatables.net, for doing CRUD operations inline on .NET Core. More details can be found in my Experience section.
- Added various new CRUD screens using Razor, jQuery, and Telerik Kendo UI Grid to do inline editing or separate add/edit forms for more complicated entities.
- Implemented three new functionalities with their supporting screens, C# back-end code, entities, database modifications, and so on.
- Implemented integration with EasyPost API to track package statuses, on a .NET Core web application.
- Refactored to decouple components, using interfaces where possible, to improve readability and flexibility.
Back-end Developer
Large US Development Studio (via Toptal)
- Ported a large web API solution from the .NET Framework to .NET Core (over 50,000 lines of code).
- Refactored a core part of the solution from a monolithic architecture and thousands of lines classes to a modern and modular one which uses dependency injection, single responsibility services and features much smaller classes.
- Implemented event-driven architecture in a section of the solution to publish events to mail, Azure push notifications (mobile), and web front-end notifications; decoupling services with event publishing and resulting in a much more extensible and maintainable code.
- Leveraged Azure performance and load metrics to troubleshoot and optimize half a dozen critical endpoints that were having high CPU and memory impact. Worked together with team's DBA to optimize SQL queries and indexes, and reduce memory use and round trips to the database.
- Implemented high-test coverage with Postman with over a hundred tests. Also built numerous CRUD and flow tests for critical entities relying on Postman's js test code and variables.
- Implemented various MVC filters to address various cross-cutting concerns. This greatly reduced code repeat and cleaned the controller's code. Some of these handle generic exceptions, invalid values in model states, and implement time zone corrections.
- Advocated the migration of some projects from TFVC to Git; researched and executed how to port the actual history into Git, and implemented a process to migrate additional changes from TFVC to Git to keep them synchronized.
- Implemented synchronization with a third party web APIs with about a dozen endpoints, which were quite obscure and poorly documented. Managed to find the expected parameters and values through testing and trial and error.
C# Developer
Tahoe Donner Assocation (via Toptal)
- Created a console app that mirrors time tracking information from an XML web service to a local SQL server database. The database schema creation and modifications were done with EF code-first migrations.
- Built an ASP.NET Web Forms app to ensure synchronization between a local database and a third-party golf court reservation system.
- Authored numerous Postman tests to discover and verify the functionality of a third-party reservation system.
Web Developer (Contractor)
Magicnet
- Built an MVVC AngularJS back-end app for tourist information' includes a RESTful API that supports the Android front-end.
- Implemented complete test coverage of the API using Postman.
- Modified heavily a custom directory engine to support ads, implemented CSV import and export, and integrated it with Google maps.
- Implemented a membership module on a BigCommerce website, which is very restrictive and only allows HTML editions, via JavaScript and a third-party PHP server.
Web Developer (Contractor)
SouthApps
- Built a large (50+ tables) web-based enterprise resource planning application on ASP.NET MVC and Razor, with minimum code duplication.
- Implemented a role-based, configurable permissions module that integrated with the rest of the app simply with custom attributes.
- Built an auditing module also with custom attributes.
- Constructed a Twitter Bootstrap 3 front end built with unobtrusive validation and minimal round trips that ensure maximum responsiveness even when dealing with large amounts of data.
Back-end Lead | Server Administrator
Owzom
- Learned and leveraged how to use the Photon Socket Server, and did various improvements on the existing code—including performance optimization, troubleshooting and bandwidth usage reduction.
- Proposed and executed a seamless migration of our three servers from dedicated hosting to cloud hosting (Amazon).
- Handled all the server administrator tasks including DNS management, designing SQL backup scheme, and testing and applying software updates.
Senior .NET Developer
Hexacta
- Wrote a configurable and extensible rule-based invoicing module that would automatically create an invoice based on the history of an item in the system; with 80% unit test coverage.
- Established and enforced coding policies and good practices to ensure uniform code from the 15 members.
- Helped the scrum master analyze and estimate the impact of changes.
- Was sent to a client's site, from my country in Argentina to Africa, Tanzania, to set up the system we'd built and to train users.
.NET Developer
Acriter S.A.
- Made major contributions to the design and architecture definition of the system.
- Developed a multithreaded TCP connector with pluggable parsers that enable reusability for different protocols.
- Authored a performance counter library to enable any component output performance monitoring in a simple manner.
- Developed the system's front-end administrator with ASP.NET that allows configuring components and starting and stopping components and the whole system.
- Implemented a thorough performance tuning on the code and in SQL operations to ensure maximum throughput.
Experience
React Sample Apps
https://miguelhughes.github.io/react-showcase/Features:
• Slack clone
• Reddit clone
• Simplified shopping app
• Pinterest clone
• Hacker News clone
• Time-traveling tic-tac-toe game
Mozzo Projects | DataTables.net Extension for CRUD Operations
http://mozzoerp.com/Mozzo Projects | Table-per-type Inheritance Implementation
http://mozzoerp.com/This approach was used for three groups of entities, ten entities in total, and using two levels on one of them. This resulted in much cleaner entities and database and simpler code. It also allowed code generalization for manipulating said entities, taking the object-oriented approach all the way.
Mozzo Projects | Database Resource Provider
http://mozzoerp.com/It even works with data annotations so that it's picked up by HTML EditorFor and validation error messages. This core concept is expanded (first to store in the database instead of fixed files) and also adding additional lookup terms (i.e., client, location), so that terms can be customized for a client's specific needs, and falling to a broader term if a specific one isn't found.
Everything is also cached and searched in memory using a binary search, resulting in an optimal performance but also flexible enough for changing terms on the fly without needing a restart.
E-Land
E-Land is a web-based enterprise resource planning application for farming sites. We designed it to be the central point of information for a large industrialized farm. High-ranking users rely on the app to query various statuses of different elements and get reports, while lower-ranking users use the mobile app to track their daily tasks, report issues, and add vital data.
We used ASP.NET MVC4, HTML5, CSS3, and various jQuery plugins and extensions, data tables, unobtrusive validation, Google maps, and plenty of Ajax. This made it easy to use, blazing-fast, and available everywhere.
Commercial presentation page: E-land.es/en
Demo page:
app.eland.es/demo
user: andrew
pass: 123456
Please use with care as it is used frequently to demo features.
The City
On the front-end code, I experimented with an extension between controllers, so even though some of the screens are similar the code is very compact and there is little code duplication.
I also implemented a few directives to reuse components; for example, the categories selector checkboxes and the map pin selector.
User: admin
Password: gto9Q1wjs6
LinkedIn Recommendations
"I've known Miguel since grade school, and had no hesitations choosing him to lead development of our back-end at Owzom. He did not disappoint. He's an excellent Software Engineer, writes solid code, and cares about implementing the right solution at all times. He has great communication and is super reliable, balancing development and operations with a sensible eye for the product. I'll be looking forward to working with him again in the future."
- Joaquin Estrago (Lead Software Engineer at Redemption Games)
"I met Miguel while doing several interviews with one of our customers to get a new Sr Developer. All of our candidates were having problems until Miguel finally made the cut after several interviews were he had to answer questions ranging from UML to multi-threading on one to one video conferences with our customer.
He showed to be a very resourceful guy who not only knew about the .Net platform but also had ideas that hinted about his solid underlying knowledge of how things work [...] allowing him to present several viable solutions and choose sensibly."
- Federico Delgado (Senior Software Engineer at OpenX)
Tcp Connector
Stack Overflow Profile
http://stackoverflow.com/users/1574861/miguel-hughesSkills
Languages
C#.NET, JavaScript, PHP, HTML, SQL, C#, CSS3, CSS, ECMAScript (ES6), JavaScript 6, T-SQL (Transact-SQL), HTML5, UML
Frameworks
ASP.NET MVC, ASP.NET, .NET, .NET Core, ASP.NET Web API, Bootstrap, AngularJS, ASP.NET Core, Entity Framework Core, NUnit, Photon, ASP.NET MVC 4, Razor, ASP.NET Web Forms, Kendo UI, Classic ASP, Unity3D
Libraries/APIs
Sockets, React, Entity Framework, REST APIs, Google Maps API, jQuery, AutoMapper, Log4Net, Web API, jQuery DataTables, EasyPost, LINQ, Photon Server, Google Analytics API, Google Vision API
Tools
Visual Studio, Microsoft Visual Studio, Postman, Git, Google Analytics, Sublime Text, SmartGit, Hangfire, Azure Application Insights
Other
APIs, Transmission Control Protocol (TCP), Multithreading, IIS, Azure WebJobs, Web Services, Ajax, Unit of Work Pattern, Leadership, Performance, Server Administration, Development
Paradigms
Responsive, Responsive Layout, RESTful Development, Scrum, Agile, Agile Software Development, Test-driven Development (TDD), REST
Platforms
Joomla, Amazon EC2, Amazon Web Services (AWS), Blockchain, Azure, Windows
Storage
Microsoft SQL Server, MySQL, Web Forms, Azure Blobs
Education
Engineer's Degree in Information Systems (Computer Engineering)
Universidad Tecnológica Nacional - Buenos Aires, Argentina
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