Web Development Technologies: React, React Native, Redux, Nodejs, Express, AWS cloud services, Restful services, GraphQL, Gatsby, Angularjs, Firebase, Jest, Babel, Webpack, Styled Components, Sass/Scss, Rxjs, CI systems, Docker, Redis, RabbitMQ
Mobile Development: React Native (Android and iOS), Cordova (Ionic, Phonegap), Flutter (willing to learn)
Databases: MySQL, PostgreSQL, MongoDB, DynamoDB
Others: TDD, Heroku, Netlify, Git, Git Flow, WebSockets, Continuous Delivery, Continuous Integration, Design Patterns, Pair Programming, Agile
Soft skills: Very Good at communication, Public tech speaker at events, meetups and conferences, Team player, Open Source , Technical Blogger
Currently looking into Distributed Systems, Microservices, Serverless, Software Architectures, Functional Reactive Programming
Senior Software engineer at Futurice
Nov 2018 - Present
Employer and personal branding by constructing and giving technical talks at internal events, meetups and conferences.
Senior Software Engineer at Smarp
May 2018 - Nov 2018
Using Angularjs and React
Maintaining a legacy product (Social Network) and Developing the new product, migrating logical parts.
Migrate legacy code into new codebase (React, Redux, Webpack)
Create API Client abstraction on top of Smarp’s core API to handle API data models, data interfaces, custom data selectors/transformers, Testability
Refactoring proposal for i18n mechanism on the web and mobile clients on Smarp product
New notification system into an Event sourcing mechanism
Proposal for the new design system, working tightly with Design and UX team for better E2E and integration testing coverage, solid design components, documentation, and right abstractions.
Scrum, Kanban, Agile values, Teamwork, Internal tech events
Project manager of Engineering blog
A member of hiring process
Oct 2017 - May 2018
Tech leading and developing on a shared mobile-web React application (similar to Spotify), meant to play and stream audio tracks, albums, artists.
Senior Frontend Engineer at Talos Digital
Jul 2017 - May 2018
Maintaining the US and Mexican based company's online digital service for managing the whole Real Estate industry including All the legal access roles, legal document management, and legal process audit
AngularJS, PhantomJS, Karma, Jasmine.
Passenger1 flight and accommodation booking system using React, Redux, Firebase, Jest, and Enzyme.
Sep 2016 - Sep 2017
Rewrote multiple B2C and B2B cloud services (cloud storage, cloud-ware) from Dojo Toolkit to React and Redux. Because of better UX, being responsive for mobile users and increase in performance, our customers grew up to 1 million and 450 thousand. (45% growth)
Upgraded a direct HTTP upload service to a Node.js, concurrent, chunk enabled uploader. Since the service is more reliable and supports link resumes, drag and drop and folder upload, our upload instances grew up to almost 20,000 instances per day and decreased the number of tickets complaining about failed uploads, hence caused a better situation for our customer support team. (logs indicate a 60% growth in upload usage).
Add testing to projects up to a reasonable code coverage to increase consistency and avoid common mistakes. Before that, the codebase didn’t have any.
Brought Git Flow to the dev team that decreased the number of conflicts and increased development speed on the codebase.
Gathered a small team of developers to run daily workshops on tech topics such as CI, DevOps, ... to make sure everybody learns as a team.
Mentored a junior frontend developer through a solid educational program (which I designed) and prepared them for team projects.
Enhanced the CI pipeline to cache none-updated assets that decreased the frontend build duration up to 50%.
Integrated upload interface with the native camera to increase UX.
Designed and developed an embedding system for cloud-based files.
Came up with an ACL system on projects that helped the company to reuse code base and extend its business model from B2C to B2B that eventually led to a 200,000 Euros contract with the main telecommunication service in Iran called Irancell.
Rewrote file preview/download service to Node.js server-side rendered pages.
A member of the hiring process.
Web Developer at Bertina Co
Dec 2014 - Sep 2016
Developed Employees Portal using AngularJS, a service to manage employees, monitor their activities, request for vacations, etc
Developed Minisite, a service to provide minimal, responsive personal portals with many themes and live management service using AngularJS, jQuery, SCSS
Developed Chia, an Android application with a gamification approach to learning the English Language, including different levels, payments, live competitions using jQuery, Cordova, Socket.io and Node.js
Developed Hamkalam, an IM application for Android devices providing an anonymous chat service to the public using AngularJS, Node.jS, and MySQL
Developed CartoonLand, an Android application providing cartoons for kids, streaming online videos with multiple qualities, download manager to cache downloaded videos, user management, IAB for payments using jQuery, Cordova, PHP, MySQL
Developed multiple enterprises and personal responsive websites using Wordpress, jQuery, AngularJS
A member of the hiring process.