About Me
I have been in the programming world for almost 10 years; That started with Pascal and VB6 and continued to Microsoft .NET platform in 2005, ranging from Windows Forms to MVC Core applications, amazing stuff. I believe teamwork and studying will increase your enthusiasm and I was so lucky to work with great developers whom made it even more fantastic. Individual creativity, moving on the edge of technology, having a never-give-up attitude and being a team player are words describing me. What I am interested in is to build robust, and reliable software to make this world more robust and reliable.
AREAS OF INTEREST
Compiler design, Code generators, Web development, .NET Technologies, Typescript, Databases, Software architecture, Design patterns, Microservice, TDD, BDD, E2E testing, Docker
EXPERIENCES
SEP 2019 – PRESENT
AURELIA CORE TEAM MEMBER
I am responsible for projects related to documentation of the Aurelia framework in which both API and Aurelia projects can be documented easier than before. You can find more information at Aurelia vNext - 2019 Fall Update.
- API documentation generator
- Document generator for Aurelia projects
JUN 2015 – PRESENT
SENIOR SOFTWARE DEVELOPER, IRANIAN NATIONAL TAX ADMINISTRATION
MAR 2014 – JUN 2015
SENIOR SOFTWARE DEVELOPER, TAX ORGANIZATION OF TEHRAN PROVINCE
DEC 2011 – JUL 2013
SOFTWARE DEVELOPER, BEHPARDAZ JAHAN
EDUCATION
2014-2019
MASTER OF SCIENCE, COMPUTER SOFTWARE ENGINEERING
2009-2011
BACHELOR OF SCIENCE, COMPUTER SOFTWARE ENGINEERING
2006-2008
ASSOCIATE’S DEGREE, COMPUTER SOFTWARE ENGINEERING
OPEN SOURCE ACTIVITIES
I’ve been involved in various open source projects in recent years. Some of these projects are used by different people.
Aurelia-Toolbelt:
A bunch of components from bootstrap 4, jquery and vanilla js for Aurelia 1 framework. As one of the creators of Aurelia-Toolbelt, I tried to collect and make the best components.
https://github.com/aurelia-toolbelt/aurelia-toolbeltCoreExtensions:
A set of extension methods in different contexts.CoreUtilities:
Any functionality that is not possible by extension methods. Like extending static classes.CoreExtenders:
This collection is designed to extend existing third-party libraries.
You can access all of my projects through the following link:
https://github.com/HamedFathi?tab=repositories
https://www.nuget.org/profiles/hamedfathi
PasswordMeter:
A project based on a point system. Its main goal is to help the end user with a stronger password.
https://github.com/HamedFathi/passwordmeter
https://www.npmjs.com/package/password-meterContribute to TypeScript type definitions
https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/zenscroll
https://www.npmjs.com/package/@types/zenscroll
PersianToolkit:
A project to work with currency, letters and so on for developers who work with Persian.
https://github.com/HamedFathi/PersianToolkitSeverus: A simple parser toolkit.
https://github.com/HamedFathi/SeverusStyl-Injector: Simple functionality to inject a text or object-based style sheet into your HTML document.
https://github.com/HamedFathi/Styl-Injector
INTERESTS AND HOBBIES
In my spare time, I enjoy reading famous novels, contributing and working on open source projects, watching movies and TV series; If any time left, computer games are another possible option. Checking technology news, Twitter, and other social networks are on my daily schedule.