Work History

Work History
Jul 2014 - Present

Senior Software Engineer

Floatalk

Senior Software Engineer

Floatalk is a global on-site commenting and sharing tool that help developers to express their opinion precisely on the specific part of a page.

Website: http://floatalk.com/

Apr 2014 - Present

Author

SitePoint

Writing technical web development articles, mainly JavaScript and HTML5 related subjects.

Profile: http://www.sitepoint.com/author/amehrabani/

May 2013 - Present

Project Manager

Yara Information Technology

Project Manager

Web development, C#, ASP.NET MVC, Python and NodeJs. 1 recommendation available upon request.

May 2013 - Present

Book Author

Packt Publishing

Writing technical web development books including JavaScript, CSS3 and HTML5 topics.

Profile: https://www.packtpub.com/books/info/authors/afshin-mehrabani

Feb 2013 - Present

Programmer

Mozilla

I contribute to Mozilla Firefox to develop DevTools and SpiderMonkey. Furthermore, I give talks for Mozilla conferences, e.g. Web Maker.

Mozillian profile: https://mozillians.org/en-US/u/afshin

Feb 2011 - Apr 2013

Project Manager

Vista Samaneye
Project Manager at Asa (2 years 3 months) NodeJS, HTML5, JavaScript, C#3 recommendations available upon request
Aug 2012 - Mar 2013

Software Developer

Socket. IO
Software Developer at (2 years 11 months) Socket. IO aims to make realtime apps possible in every browser and mobile device, blurring the differences between the different transport mechanisms. It's care-free realtime 100% in JavaScript. Page1
Oct 2012 - Feb 2013

Software Consultant

Khavarzamin System Vista Samaneye

Working with NodeJs, MongoDB and Python.

May 2010 - Apr 2012

Software Engineer, Project Manager

Tadbir Pardaz

Project Manager Team work(Jira, TFS, SVN) Enterprise Application, SOA Architecture Senior web developer(NodeJS, HTML5, PHP, C#, MVC3) Linux server management(CentOS, Ubuntu) Server/ Application security manager

2 recommendations available upon request

Projects

Floatalk
Starting August 2014

Floatalk is a global on-site commenting and sharing tool that help developers to express their opinion precisely on the specific part of a page.

Website: http://floatalk.com

Engine.IO
Starting August 2012

Engine is the implementation of transport-based cross-browser/cross-device bi-directional communication layer for Socket.IO.

Team members: Motion.js
Starting October 2012

MotionJs is an easy to use, cross-browser CSS3 library for creating animations in web. Open-source, MIT Licensed.

Repository: https://github.com/usablica/motion.js

Intro.js
March 2013

A better way for new feature introduction and step-by-step users guide for your website and project.

Repository: https://github.com/usablica/intro.js

Demo: http://usablica.github.io/intro.js/

WideArea
May 2013

WideArea is a JavaScript project which adds a lot of features to traditional textarea(s) and improves textarea abilities for better writing.

Repository: https://github.com/usablica/widearea

Demo: http://usablica.github.io/widearea/

Progress.js
May 2014

ProgressJs is a JavaScript and CSS3 library which helps developers create and manage progress bars for any object on the page. You can design your own template for progress bars or simply customize them.

Repository: https://github.com/usablica/progress.js

Demo: http://usablica.github.io/progress.js/

People-driven web (pw.js)
June 2015

People-driven web is a decentralized content management system that works with Torrent.

Repository: https://github.com/peopledrivenweb/pwjs

Demo: http://www.peopledrivenweb.com/


JSON to HTML
March 2014

Simple Json to standard HTML table converter in fastest way. Demo: http://afshinm.github.io/Json-to-HTML-Table/

Repository: https://github.com/afshinm/Json-to-HTML-Table

Webpage: http://afshinm.github.io/Json-to-HTML-Table/


50k array sort in web browser
September 2013

A demo of HTML5 Web Worker, sorting 50K array with Bubble Sort in web browser.

Repository: https://github.com/afshinm/50k

Demo: http://afshinm.github.io/50k/

BourseView
An online portal to get latest stock news and compare statistics of stocks.

Juniper Digital
Online shopping portal with PHP and MySQL. Semantic Versioning (Persian)

Semantic Versioning Specification (Persian)

Repository: https://github.com/usablica/semver.ir


Magnet Web Crawler
Starting February 2012

Magnet is a NodeJS based web crawler with clustering ability that can crawl and fetch everything from websites with it's powerful algorithm. It uses MongoDB as Database.


WhyNoSQL.ir
Starting September 2012

This is a presentation about "Why Using NoSQL and How?". This document also contains a learning about MongoDB, how to use and configure it.


Online Trading
April 2010 – September 2011

Web based application for online stock trading with C#, SQL Server, Lightstreamer.

Team members:

Publication

IntroJs Starter - Packt Publishing

Authors: Afshin Mehrabani, Ehsan Arasteh  
http://www.packtpub.com/create-useful-introductions-for-websites-and-applications-with-introjs-library/book  

IntroJs is a JavaScript and CSS3 library, used to create simple step-by-step help pages or introductions for websites and applications to show the users new features or whole application parts quickly and concisely. Instant IntroJs is a reference to get started with IntroJs right away.

Getting Started with CreateJS - Packt Publishing

Authors: Afshin Mehrabani
http://www.packtpub.com/getting-started-with-createjs/book  
CreateJS is a popular, well supported JavaScript library used for web advertising, education, gaming, and cartooning.The CreateJS suite consists of different libraries that are designed to work independently or together to create rich interactive content on open web technologies on an HTML5 canvas. In CreateJS, the EaselJS API provides solutions for working with rich graphics and interactivity and integrates well with its tweening library; TweenJS.

MongoDB High Availability - Packt Publishing

Authors: Afshin Mehrabani
https://www.packtpub.com/big-data-and-business-intelligence/mongodb-high-availability
MongoDB is one of the pioneers in implementing the NoSQL concept by using "Document" as the infrastructure to save and restore data from a database. Using MongoDB in high pressure situations needs a predefined plan, and this book with its step-by-step approach can help you to make a highly available MongoDB server using the latest features.

Starting with the basic concepts and their implementation, you will study real-world use cases which will help you understand the practical aspects of MongoDB. Each step contains an in-depth presentation and several screenshots. This book teaches you all the tips and tricks to make a highly available MongoDB server using different clustering solutions. This book has a perfect balance of concepts and their practical implementation along with solutions to make a highly available MongoDB server in a production environment and under high throughput with clear instructions and guidance.

Understanding asm.js - SitePoint

http://www.sitepoint.com/understanding-asm-js/

Asm.js is currently a trendy subject in web development. Reading a complete guide about asm.js, its goals, and its roadmap is impossible because you’d have to read multiple articles and put them together yourself. This article attempts to wrap up almost everything you need to know about asm.js using a step-by-step guide and real world examples, plus a couple of benchmarks.

A simple log server using express, node.js, and mongodb

http://www.codeproject.com/Articles/356975/A-simple-log-server-using-express-nodejs-and-mongo
In this article we are going to review a piece of NodeJS code and learn how to use some of its common modules. This is a simple application which keeps record of logs including errors, warnings and information.

The most noticeable point about this log server is the way it stores log data, which uses a sort of document-oriented database.

Education

Education
2011 - 2015

BACHELORS

Tehran Rayane'e University
2007 - 2008

Diploma

Nemoone Hosseinian, Neyshabour

Skills

Skills

JavaScript, Node.js

Expert. Published more than 10 open-source JavaScript and Node.js libraries.

Python

Familiar with common Python frameworks, Django, Flask, etc.

Git

Very good. Has an experience in large scale projects.

Web, application security

Expert. Familiar with common types of attacks and security vulnerabilities.

Linux Manegement 

Very good.

C#, ASP.NET MVC

Very good.

CSS3, HTML5

Very good. 

Automatic deployment 

Using source controls and continues integration tools

Unit testing

Worked with automated testing frameworks, unit testing and task managers.

Design Patterns

Very good

Awards

  • Iranian National Skills competition, Web Design, 2009 - 1st place, Gold medalist.
  • Iranian National Skills competition, Web Design, 2008 - 1st place (in the province)
  • Membership of Bonyad e Nokhbegan
  • Youth Kharazmi competition, Programming, 2010, 4th place.
  • Global Search Interactive – Online Marketing, SEO (Cert. Number: 01564 – Cert. Date: 2.Feb.2012)
  • Mahan Business School – International Internet Marketing (Cert. Date: 3.Feb.2012)
  • First place in VB.NET programming competition

Interests

Enterprise Application and SOA Architecture

Cloud computing

Web 3.0

HTML5, JavaScript, NodeJS and CSS3

Linux and open-source

Server and application security management

References

Yara Information Technology

21st street, kordestan highway, Tehran

Tell: +98 21 42570000

Tadbir Pardaz Co.

Karim khan e zand Street, 7th tir square, Tehran

Tell: +98 21 89306000

Peivand karan e etemad

Ayatollah Kashani Streen, Mehran alley, Tehran

Tell: +98 21 44059283