Mostafa Draz, Software Developer in Sydney, New South Wales, Australia
Mostafa Draz

Software Developer in Sydney, New South Wales, Australia

Member since June 15, 2015
Mostafa is a software engineer with nearly a decade of experience in the development of Java and Java eco-systems for large, global enterprises such as Atlassian and Rakuten. He has spent over six years specializing in PHP's Laravel framework, delivering major projects including a financial markets portal with an administration panel and a public-facing web app. Mostafa has also developed numerous sophisticated, reliable, front-end projects using React.js, Ember.js, and Vue.js used by millions.
Mostafa is now available for hire

Portfolio

  • Atlassian
    Amazon Web Services (AWS), React, Elasticsearch, AWS, Jest, Redux, JavaScript...
  • Freelance
    React, Java, MongoDB, MySQL, HTML5, CSS3, Laravel, PHP
  • Rakuten
    Spring Boot, Oracle, JavaServer Pages (JSP), Apache Struts, Hibernate, Spring...

Experience

Location

Sydney, New South Wales, Australia

Availability

Part-time

Preferred Environment

PyCharm, WebStorm, IntelliJ IDEA, Slack, Ubuntu, Linux

The most amazing...

...project I've worked on was an HTML5-JavaScript text editor with complex requirements for document translation services, backed by a Java Spring web app.

Employment

  • Java Software Engineer

    2018 - PRESENT
    Atlassian
    • Designed an endpoint to enable our third-party app providers to perform bulk operations, which took into account concurrent tasks and deadlocks among the resources. This reduced the time it took to perform batch actions by 60%.
    • Migrated an app from old JavaScript code and a tightly coupled architecture to a new app using React that could be locally tested and developed. This reduced our development loop and helped ship features faster and in a more reliable manner.
    • Laid out architecture for communication between a monolith and a microservice to predict the required data by the monolith request. This reduced the latency from one second to nearly 200 milli-seconds, which drastically improved the user experience.
    • Integrated a React front-end application with a larger front-end React project and migrated the architecture to reflect the new requirements. This put our team's plan on track with the broader company vision.
    Technologies: Amazon Web Services (AWS), React, Elasticsearch, AWS, Jest, Redux, JavaScript, Java
  • Software Engineer

    2011 - PRESENT
    Freelance
    • Designed architectures for complete software solutions, with stability and scalability in mind.
    • Developed a financial portal application and its administration panel using Laravel 5 framework and PHP 5.6, to simplify data entry.
    • Developed a front-end application for the financial portal using Laravel 5 React, which increased the speed and ease of use of the app.
    • Developed a tourism company website and its administration panel using plain PHP and MySQL.
    • Assisted in the development of a college student management portal application using Java.
    • Managed multiple Linux servers for multiple users and companies, providing support for failures and handling upgrades and maintenances.
    • Wrote a cheat sheet for the ThymeLeaf templating engine and posted it on GitHub, which attracted 37 starts and aided other engineers in using it for development.
    • Developed a Laravel 7 and Vue.js restaurant booking application.
    Technologies: React, Java, MongoDB, MySQL, HTML5, CSS3, Laravel, PHP
  • Java Software Engineer

    2016 - 2018
    Rakuten
    • Wrote development specifications for other developers that reflect the details of tasks to be done, which would make their work easier, well defined, and understood.
    • Added a new ticket type and booking flow system to a legacy air-ticket booking system, which gave users access to a variety of new tickets and increased the revenue by one million yen/month.
    • Enhanced the security of our web service surfing by enabling secure HTTPS access throughout our entire web app, which gave users a safer and more reliable experience.
    • Designed an architecture for a microservice-based system that resembles in its functionality a legacy system, and used the latest tools and design methodologies to achieve the desired output.
    • Laid out the communication and data flow design of an event-based system for a ticket booking platform. This reduced the user's waiting time and gave them a faster experience without having to be blocked by their waiting requests.
    • Developed REST-based APIs and designed their model to enable ease of access and protection of our data from malicious users, which facilitated the communication between all the systems APIs and led to a more stable system.
    Technologies: Spring Boot, Oracle, JavaServer Pages (JSP), Apache Struts, Hibernate, Spring, Java
  • Java Software Architect

    2016 - 2016
    Aurea Software
    • Broke down the architecture of a monolithic mailing system into small microservices. This increased the scalability and reliability of our system.
    • Maximized the efficiency of our usage of AWS to fully utilize Amazon's services and cloud tools, such as Load Balancing and Autoscaling, which reduced the cost of cloud hosting by a great margin.
    • Enabled automatic scaling of the database by moving it from a traditional MySQL to a cloud-managed service, which increased the reliability and stability of our databases, and enabled us to work under a heavy load and scale accordingly.
    • Unified the model and architecture of the database across all of our database servers. This made the database more consistent and predictable as well as increased its scalability.
    • Developed a sidecar app that provided us with custom automatic scaling metrics and alarms, which greatly enhanced our resource utilization and reduced our running costs by 40%.
    Technologies: AWS DynamoDB, Oracle Database, PHP, Amazon Web Services (AWS), Hibernate, Spring, Java
  • Senior Java Developer

    2014 - 2016
    Future Group
    • Developed back-end modules using JSF 2 for a translation management system, creating and designing a very complex document parsing algorithms and event-driven modules, which would then enable users to upload and translate their documents promptly.
    • Created a web-based rich text-editor using JavaScript and HTML5. This tool was used as a translation editor for translators, and, being a web-based app, made it platform independent and easily accessible.
    • Implemented a WebSockets asynchronous event-based notifications system to enable our users to get their tasks as soon as they arrive, which increased their efficiency and time utilization.
    • Reverse-engineered a modern, translation tools match scoring system, which is how they calculate their matches and scores.
    • Trained a machine learning model to recognize translation with specific criteria. This greatly increased the efficiency and accuracy of the translators as well as reduced their error-rate, and enabled them to share their knowledge.
    Technologies: Ember.js, Hibernate, MongoDB, MySQL, Spring MVC, Java
  • Software Engineer

    2013 - 2014
    Mubasher, Int.
    • Built a tool that scrapes the web for files and notifies the team of updates, then downloads the files and sends them across, using WebSockets, this increased this efficiency and eliminated the time wasted on searching for their files.
    • Implemented software to unify the personal profile bios of our people of interest. It also generated a unified form of a company's business description by mining our data to generate them, which increased their consistency and accuracy.
    • Created a semantic search tool that would enable users to search for information on our web site using natural language, which enhanced the user experience and increased the visibility our newly added features and sections.
    • Developed a web scrapper system that scrapes certain websites and collects their data then pushes them to our database via a RESTful API, eliminating the time wasted on manually scrapping this information and then storing them in our databases.
    • Developed a tool that pushes notifications of any newly added news items to the news editors who review it before publication. This reduced the error rate and prevented misinformation from being published.
    Technologies: Oracle Database, WebSockets, Spring MVC, Spring, Java
  • Junior Software Engineer

    2012 - 2013
    FerryCode
    • Migrated a Java EE 5 application to Java EE 6, upgrading components developed in JSF 1.2 to PrimeFaces and a JSF 2.0 component.
    • Developed an HTML5 news page drawing tool that draws a mock of the newspaper pages before they’re published, giving a more robust look and catching errors before publishing.
    • Handled on-site deployments at clients’ servers and fixed issues and failures that happened during runtime.
    Technologies: MySQL, Enterprise Java Beans (EJB), Java EE, Java

Experience

  • Rakuten Travel (Development)
    https://travel.rakuten.com/

    An online travel agency that specialized in Japanese tourist attractions. I was the back-end developer who also worked on the front end. I assisted in the breaking down of the monolith and designed a microservice that was the core of the system after being broken down.

  • Jira Cloud (Development)
    https://www.atlassian.com/software/jira

    I work as a back-end and front-end engineer in Jira cloud, and reliably and adequately migrated customers to the cloud to help ease this process. My work involved writing back-end services, which made our service more secure and compliant to personal information acts like GDPR, as well as maintaining the same functionality in the front end.

  • Translation Management Software (Development)

    I was a senior engineer who wrote and maintained a translation management system that had complex workflows for translators. It was meant to replace a proprietary tool with an in-house web-based cross-platform tool. I developed a WYSIWYG editor that had advanced functionalities tailored specifically for translation management, such as writing custom HTML tags. I also worked on the back end for managing the flow of extracting translation text and then producing the final translated document.

  • Laravel-based Financial Market Information Tool (Development)
    https://www.moneycrashers.com/best-stock-market-investment-news-analysis-research-sites/

    For a freelance project, I wrote a full-fledged financial market information web tool using Laravel 4 and then migrated it to Laravel 5. It used MySQL for the database and was deployed to a cloud-hosted Linux server. It displayed information about current stock prices and financial news. I wrote web scrapers and used MongoDB to store financial document information for stock prices. For the front end, I used React.js and Highcharts. The link will explain what they are and how they work.

Skills

  • Languages

    Java, PHP, HTML5, CSS, HTML, JavaScript, Python, TypeScript, CSS3
  • Frameworks

    Spring, Hibernate, Laravel, Spring MVC, Spring Boot, JSF, Ember.js, Redux, Apache Struts, JavaServer Pages (JSP), Jest
  • Libraries/APIs

    React, React Redux, Guava, Vue.js 2, Vuex, Vue.js, Node.js
  • Paradigms

    REST
  • Other

    Architecture, System Design, AWS, Material Design, SaaS, Open Source, System Architecture, Leadership, Team Leadership, Vue-router, Enterprise Java Beans (EJB), WebSockets
  • Tools

    Git, Slack, IntelliJ IDEA, WebStorm, PyCharm
  • Platforms

    Docker, Amazon Web Services (AWS), Linux, Ubuntu, Java EE, Oracle Database, Oracle
  • Storage

    MongoDB, Elasticsearch, AWS DynamoDB, MySQL, MariaDB, Oracle DBMS, PostgreSQL

Education

  • Bachelor's degree in Computer science
    2008 - 2012
    Akhbar El yom Academy - Cairo, Egypt

To view more profiles

Join Toptal
Share it with others