Career Goal

With years of academic researches on emerging paradigms in software engineering, I have always tried my utmost to be an innovative and resourceful person in furthering projects and providing smart solutions. I am keen on boosting my skills to the highest level by experiencing state-of-the-art technologies for software modeling, design, and production, also by having close-knit collaboration with other experts. Leading technical companies and research teams to provide new, innovative ideas, which will ease the way for people’s life in a smart society, is my ultimate goal.

Career Profile

  • I have over 15 years of professional experiences in software industry. I negotiate with stakeholders for requirement analysis and provide cost-effective technical solutions using state-of-the-art technologies.
  • With strong business background and sense of entrepreneurship, I have successfully co-founded tech-based businesses in middle east, including Melkavi (certified as Knowledge-based project), CeramPakhsh (won 100 Premier Startups award), and NetBarg (valued as $50 million).
  • I have practically applied agile methodologies to lead technical projects and teams, fulfill the business requirements and prepare managerial to technical documentation and reports (totally up to 10,000 pages).
  • Considering quality attributes like performance (response-time in milliseconds), availability (99.9% for 5,000 simultaneous requests), security (99.9%), on-demand vertical/horizontal scalability, SEO-friendliness, etc., I have designed suitable software architectures to develop and deploy over 50 mobile/web applications on cloud servers, and process databases with more than 10 million records.

 

  • I have graduated my PhD from one of the best universities in Iran, Shahid Beheshti University. With strong academic software and service engineering background, I have applied emerging paradigms like Micro service, Cloud computing, ED-SOA, ESB, etc. in SDLC phases.
about-pic

Education

Ph.D.

21.12.2016

Computer Engineering – Software & Service

Shahid Beheshti University, https://sbu.ac.ir/

Thesis: A Framework to Support Run-time Service Choreography Adaptation

Master’s Degree

16.09.2010

Computer Engineering – Software & AI

Thesis: Lexico-syntactic Patterns for Ontology Population in Persian Language

Bachelor’s Degree

21.09.2006

Computer Engineering – Software

Thesis: SDLC-based Investigation and Implementation of an Online E-commerce Platform

Teaching Experience

Shahid Beheshti University of Medical Sciences, School of Allied Medical Sciences

2012-2015

I taught a range of subjects including BPM, Project Management, Advanced Software Engineering, E-learning, Service Engineering.

 

Shahid Beheshti University, Department of Computer Sciences

2012-2013

I taught a range of subjects including Internet Engineering and Enterprise Service Bus.

Publications

  • Y. Rastegari, F. Shams. A Mathematical Model for Adapting Service-based Applications to Users’ Quality Preferences, Journal of Computing and Security, 2019.
  • Rastegari, Yousef, and Fereidoon Shams. A Dynamic Architecture for Runtime Adaptation of Service-based Applications, The International Arab Journal of Information Technology, 2018.
  • Y. Rastegari, F. Shams. Toward Automatic Transformation of Service Choreography into UML State Machine, Journal of Computing and Security, 2017.
  • Y. Rastegari, F. Shams. A Context-Aware Reflective-State Framework to Reconfigure Service Based Applications, Journal of Computing and Security, 2017.
  • Rastegari, Yousef, and Fereidoon Shams. “Optimal decomposition of service level objectives into policy assertions.” The Scientific World Journal 2015 (2015).
  • Rastegari, Y., et al. (2011). Applying gravitational search algorithm in the QoS-based Web service selection problem. Journal of Zhejiang University SCIENCE C, 12(9), 730.
  • Rastegari, Y., et al. “Web Service Choreography Verification Using Z Formal Specification.” International Journal of Engineering-Transactions B: Applications 29, no. 11 (2016): 1549-1557.
  • Rastegari, Y., et al. “Collecting positive instances of “instance-of” relationship in the Persian language.” In Electronic Computer Technology (ICECT), 2010 International Conference on, pp. 46-49. IEEE, 2010.
  • Rastegari, Y., et al. “Hierarchical architecture as a new approach for building web applications”. In Software Engineering and Service Sciences (ICSESS), 2010 IEEE International Conference on (pp. 459-462).
home-pic
about-pic
about-pic

Interpersonal Skills

  • Scientific researches and working projects conduct
  • Strong oral and written communication
  • Providing intelligent easy-to-implement solutions for big challenges
  • Enthusiastic about smart emerging technologies
  • Self-motivated and proactive

Technical Skills

  • Enterprise/solution architecture
  • Software and service engineering
  • Software analysis, design, and modelling
  • Database design using MySQL and Oracle servers
  • NoSQL database (MongoDB) design and reporting
  • Javascript, CSS3, HTML and other UI/UX technologies
  • Experienced in using Debian and CentOS operating systems
  • Visio and IBM RSA for business process design and modelling
  • Modelling business process requirements using BPMN and BPMS
  • Software documentation using MS Visio, IBM RSA, and Sparx EA
  • Traditional (RUP) and Agile (XP, SCRUM) software methodologies
  • Software design patterns and architectural styles and reference models
  • DevOps leadership using Git, Docker, Jenkin, Kubernetes, Ansible, Puppet, etc.
  • As-is / To-be analysis of enterprises using ITIL, FEAF and TOGAF frameworks
  • Enterprise Service Bus (ESB) development using Mule studio, Apache ServiceMix
  • Skilled at software architecture evaluation using ATAM and CBAM analysis methods
  • Deep understanding of e-commerce and start-up concepts and related software productions
  • Extensive experience in source code and version control tools like GitHub, GitLab and SVN
  • Experienced in monitoring tools like New Relic, Zabbix, Apache Jmeter and PM2 Keymetrics
  • Over 15 years of experience in technical team leadership based on cutting-edge technologies and tools
  • Microsoft Azure and Amazon Web Services (AWS) such as EC2, S3, Lambda, CloudWatch, CloudFront, etc.
  • ReactNative, PHP (CakePhp, Laravel), Javascript, AngularJS, React, NextJS, NodeJS, HTML, CSS, MySQL, Oracle, MongoDB Expert for Web and Mobile application development
about-pic

Relevant Experience

Co-founder & Project Manager

05.2020 to present

Melkavi (An Advanced Real-time Data miner for Real estate & Properties)

This project is certified as Knowledge-based by “vice-presidency for science and technology” of Iran government.

An emerging start-up.

Website: www.melkavi.com

Responsibilities:

  • Hiring educated hands-on developers, AI and data mining experts to join the project’s team
  • Business requirement investigation and gathering based on technical benchmarks and meetings
  • High-level to low-level software modelling ranging from Software Architecture, BPMN to near-to-code models like UML, BPEL etc.
  • Technical strategy and roadmap planning based on architectural vision and cutting-edge technologies
  • Supervision over both software developers and artificial intelligence staff progress
  • DevOps leadership using different tools like GitLab (BitBucket), Slack, Jenkins, Docker, Ansible etc.
  • Software quality assurance, specifically in terms of performance and security
  • Analyzing and converting business requirements to software activities and tasks
  • Software project management, time scheduling, resource management, etc. using ASANA and MS Project
  • Advanced report generation and documentation for usage of business, technical, and marketing departments
  • Some software quality achievements are listed here. Data timeliness less than 1 minutes achieved by data normalization and reduction in neural network learning. User friendliness achieved by single page application implementation, synchronize page rendering, dark night support, responsive design, reactive response to search filters. Data quality increased by data preparation techniques. Model accuracy was achieved by Feature selection, Normalization and Tuning algorithm. Performance was achieved by Data transformation, Data marts, Windowing, Cache, CDN, Asynchronous fragment rendering. Price prediction response time is less than 1.2 second or District/Price clustering is done less than 460 milliseconds.
  • Agile methodology is applied, ASAN, Slack and MS project are used and software artifacts are analysis & design documents, android and iOS mobile applications, web application, back-end admin panel.
  • Various technologies are applied in this project including Scikit-learn, Pandas, Numpy, Keras, DBSCANLeast Squers, K-means, MLP, Rubix ML, PHP ML, Swagger, Postman, Ract, NPM (NodeJS), Javascript, Php, MongoDB, MariaDB, etc.

Co-founder & CTO

05.2019 to present

HOOSHA Co. (Aveed Big Data AI Analytics Co.)

Company National ID: 10860180879

Website: www.hooshatech.ir

Responsibilities:

  • OKALA: I directed design, development, test and deployment phases of this project. It was an online grocery shopping platform owned by the biggest retailer in Iran (Golrang Holding). Security (99.9%), availability (99.9%) and performance (response time < 2 sec.) were achieved by layered architectural style (core and application layers), content delivery network, elastic load balancer, elastic cache and data encryption. In core layer, I applied MongoDB, Node.js, key-pair encryption, map APIs consumption, and scheduled optimization processors. In application layer, I applied MVC design pattern, Php Laravel, MariaDB, Laravel API resource and React for admin panel and customer front-end. This project is accessible via: https://okala.com/. Software artifacts are analysis & design documents, android mobile application (for delivery man), web application, back-end admin panel.
  • HomeInja: An online real estate management platform to bring optimized communication between agencies and customers and process huge amount of property files hourly. Data processing performance is realized by combining NoSQL and Relational databases using MongoDB and MySQL. Scheduled Java scripts process NoSQL data, using complicated data preparation techniques, while the ready-to-use data was saved in, and manipulated by MySQL. An attractive bootstrap responsive front-end was developed using AngularJS and an admin panel was developed using CakePhp and Metronic admin template. Although after one month after launch, number of DB records exceeded the initial prediction by 3 times (5 million records), I achieved HTTP-response-time < 3 seconds, using architectural techniques and tools like Memcached, APC cache, CDN, NewRelic monitoring, Cloud hosting, etc. A front-end sample of this project is accessible via: https://shargroup.ir/. Software artifacts are analysis & design documents, android and iOS mobile applications, web application, back-end admin panel.
  • Logistic 360 Project: An online complicated application which covers all processes including order submission, customer profile management, distributed inventory management, advanced real-time reporting, etc. After several requirement and analysis sessions, all processes were modeled in BPMN 2.0 and a customized BPEL engine was developed to handle workflows execution. Continuous integration and delivery was achieved by Git, Docket, Jenkin, and Ansible tools. React, Laravel and MariaDB are used for back-end and front-end development. Using separation of concern technique, the HTTP requests are handle by Nginx and CDN servers while time-consuming report generation processes are done using Python and MongoDB databases at background. The back-end panel could be presented upon request. Software artifacts are analysis & design documents, android mobile application, web application, back-end admin panel.
  • All the projects are developed, tested and deployed on cloud-based Linux servers (CentOS or Debian) and managed in Agile mode with the usage of Slack, ASANA and MS project.
  • Rational Rose and MS Visio tools are used for designing and modeling UML and BPMN diagrams.
  • Different software architecture design pattern and styles are applied like Model View Controller (MVC), Layered, Reflection, Inversion of Control, Service oriented etc.

Co-founder & Technical Advisor

02.2019 to present

CeramPakhsh Co. (CeramPakhsh Pardis Rayan Co.)

This project is certified as Creative and won 100 Premier Startups Award from “vice-presidency for science and technology” of Iran government.

Company National ID: 14008544146

Website: www.cerampakhsh.com

Responsibilities:

  • CeramPakhsh is the biggest Ceramic and Tile online bazar in Iran. Starting the idea in early 2019th, I planned, teamed up and scheduled to launch the project on time. Augmented reality is under development for decorating customers’ interior spaces with product images. Due to lots of product attributes, we applied unstructured database (MongoDB) to save and manipulate colors, sizes, prices, dimensions, usage and up to 50 other variations. Agile methodology was applied to conduct several software analysis and modelling sessions. Java, Php, Laravel, MariaDB, MongoDB, Javascript, React, Redux and Next.js are used for development. SEO techniques are all applied in this project including integration with Google console & analytics & tag manager, landing page creation, provide auto responder with Mailchimp, image & HTML code optimization, etc. Software artifacts are analysis & design documents, android and iOS mobile applications, web application, back-end admin panel and merchant panel. This development methodology is Agile and it is accessible via: https://cerampakhsh.com/

Technical Leader

10.2014 to 05.2019

KARIZ Co. (Kariz System Pouya Design and Architecture Knowledge-based)

Company National ID: 10320670435

Website: www.karizsystem.ir

Responsibilities:

  • Designing and modeling ERP System and Enterprise Service Bus (ESB) for ICT organization of Karaj Municipality using MS Visio and MuleSoft ESB tools
  • AnyPay: Requirement definition, software analysis and modeling, business process modeling for AnyPay platform using IBM RSA, BPMN 2.0 and Bizagi. The documentations were delivered to GSS company (https://www.gssint.com/).
  • AdBid: This is the national smart advertising platform funded by Ministry of ICT in Iran. This project was conducted in Agile methodology and is mainly developed by Node.js, MongoDB, GraphQL and Javascript technologies. Also, amCharts and highCharts libraries are used for graphical report generation. It is precisely documented including requirements, design models, architectural views, marketing and business plans. Various context information from clients, customers, advertisers, infrastructures, environment etc. besides need for real-time processing, make this project complicated. However, ads (banner) load in less than 0.5 millisecond was achieved by applying Layered, Reflection and SOA in our architecture design, even-driven coding plus NoSQL DB, and several layers of caching and CDN. This project is accessible via: http://adbid.ir/
  • Monitoring and optimizing AdBid project using PM2 keymetrics and Zabbix tools
  • Source code control and versioning by GitLab and BitBucket tools, designing physical and logical structure for database and procedures in Oracle, MS SQL Server and NoSQL database servers
  • Identifying and designing web services, creating service portfolio and launching Enterprise Service Bus by MuleSoft ESB and Oracle ServiceBus tools
  • Software consulting for optimal selection of software Algorithms, Architecture, Technologies, Plugins, Contractors etc. based on Budget, Time and Available resources. The consulting activities were done for SOA transition plan in International Imam Khomeini Airport, Sina Bank and Mellat Bank.

Co-founder & CTO

08.2011 to 10.2014

NetBarg (Iranian Modern Business Co.)

The most popular daily deal site in Iran

Company National ID: 10320611652

Website: www.netbarg.com

Responsibilities:

  • Technology benchmarking, technical strategy planning, and creation of IT master plan based on TOGAF enterprise architecture framework
  • Requirement identification, business-technology mapping and interweaving, service discovery and service catalogue creation based on ITIL practices
  • Built a successful technical department from scratch and hired experts in different fields including Server administration, Database modeling & design and administration, Code development, Code test and deployment, Continuous monitoring and optimization.
  • Bringing the culture of Linux-based development besides setting up DevOps processes in technical department like Github for version control, Docker, Jenkin, Puppet for CI/CD.
  • Analysis, design and modelling of functional requirements in UML and BPMN notations
  • Project management, task scheduling and tracking using Slack, JIRA, ASANA and MS Project tools
  • Doing performance and availability Tests by Apache Jmeter tool. In another experiment, I applied Z Formal language in Zeves and Rodin tools to define test cases and verify software functionalities. Also, continuous code debugging, error and bottleneck detection was done using New Relic tool.
  • Logical database modeling, verification, and normalization using IBM RSA and MS Visio for more than 120 tables such as order, user, coupon, discount, transaction, user groups, access level, category, geolocation, etc. Also, MySQL Workbench and phpMyAdmin were used for physical creation.
  • Scalability, availability, performance and security were detected for software development. In addition to software architecture design, Elastic cache, Memcached, APC cache, MySQL clustering in combination with CDN, brought availability=99.9% and HTTP response-time < 1 second. Both vertical and horizontal scalability were achieved using load balancers and Amazon Web Services. Key-pair encryption of data in database, ACL for roles and micro services, and two-factor authentication for users were applied to achieve maximum security.
  • The first version of Web application was developed using CakePhp, AngularJS and MySQL which was redesigned and upgraded to Laravel, React, MongoDB and MariaDB in recent years.
  • The first version of Mobile applications was developed in separated teams using Swift and Java. The next upgrade version is based on React Native framework.
  • Two years after launch, I teamed up a data mining group in technical department for knowledge extraction.

Senior Full-stack Software Engineer

05.2009 to 08.2011

ISATIS Co. (Peyk Asay Isatis Information Technology)

Responsibilities:

  • Execution of SDLC phases including: preliminary investigation of business and software requirements, software design and modelling, production, definition of test scenarios, deployment and delivery
  • Professional artifact modelling in UML 2.0 diagrams like Activity, Sequence, Collaboration, Use case, etc.
  • Professional documentation including: Software installation, configuration and maintenance; Database optimization and backup procedure; End-user manual and guidance
  • Quality of software test and verification according to ISO 9126, ATAM method, and tools like Apache Jmeter, New Relic, etc.
  • Performing Unit, System, Environment and Acceptance tests and software debugging by using Matlab simulation, Software prototyping, Questionnaires forms, Test scenarios, etc.
  • Web application development using PHP, Java, and JavaScript programming languages
  • UI and UX development using CSS, HTML, Smarty, Ajax, and Jquery technologies
  • Database design, normalization, and optimization using MS SQL, MySQL, and Oracle servers
  • Designing Procedure, View and Table in database by using PhpMyAdmin and MySQL Workbench
about-pic
home-pic

01

02

home-pic

03

Best Practices