Maryam Abdoli

Welcome to my Portfolio

Hi, This is Maryam, a software engineer with a passion for building and maintaining secure, scalable api based application.

About Me

I am a software developer with over 7 years of experience in industry. I have a strong background in Python, Golang, Rust, and using different tools and technologies to build scalable and secure applications, like K8s, docker-compose, CI/CD, SQL/NoSQL Databases.

My passion for web development stems from my love for creating visually appealing and intuitive user experiences. I am constantly learning and exploring new technologies to improve my skills and deliver the best possible solutions for my clients.

My Expriences

IAP

Designed and implemented an event-driven, cloud-agnostic platform (EED) for efficient cloud diagnostics.

I participated in designe and implement an event-driven, cloud-agnostic platform (EED) for efficient cloud diagnostics. This project involved developing microservices using Golang and Rust, establishing gRPC communication between services. I deployed a sharded MongoDB database, designing its schema for tracking execution graphs and events, and implemented Kafka as an event broker to handle event processing. Utilizing Test-Driven Development (TDD) practices, I ensured the robustness and reliability of the microservices. I also participated in deployment a Kubernetes cluster in Azure to manage and autoscale the containerized project, and used Terraform to safely deploy infrastructure components, including microservices, databases, and task runners. Additionally, I implemented serverless architecture with OpenFaaS and Docker for task execution.

RestockAlerts

Developed Restock alert app for Shopify stores, and implemented auto-deploy with Gitlab-CI and Docker-compose on azure Virtual machines.

I participated in development of Shopify apps, including a back-in-stock feature, and implemented auto-deploy pipelines using GitLab-CI and Docker-compose on Azure Virtual Machines. I also participated in web application implementation using the Django web framework to facilitate customer interactions through a specialized panel. The project utilized PostgreSQL and MongoDB for database management, leveraging advanced Django ORM for efficient querying and manipulation. Additionally, I automated tasks using Celery to perform statistical analysis and data monitoring.

Astrolabe

A ranking web application like Alexa, for Iranian android applications.

As a Technical Officer for the Trends product, I managed terabytes of data using Google BigQuery and MongoDB, and processed data with Spark. I deployed and maintained web applications on Google Cloud Platform (GCP) using Ansible. I implemented web applications with the Django web framework and managed a React-based project, enhancing its features and ensuring its maintenance. Utilizing Test-Driven Development (TDD) practices with pytest and unit test, I ensured the robustness and reliability of microservices.

TUBP

Predict internet user behavior in long-term (up to one month) periods using usage patterns and activity types.

This project was my masters thesis, marking the first time I was responsible for designing and maintaining a high-throughput system. I monitored terabytes of data, processed it, and saved it in appropriate databases. I chose MongoDB due to the volume and non-relational nature of the data, and utilized Python for data processing with Redis and Celery, as well as for data analysis with Pandas and NumPy. For deployment, I employed Docker-compose and CI/CD pipelines. Additionally, I implemented machine learning models, including LSTM and CNN, for predictive analysis.

My Story

From Dream to Career

When I look back, I realize how much I have evolved. With a background in electrical engineering, I began my career as an FPGA developer and worked in that field for two years. Six years ago, driven by my long-standing passion for computer science—a fascination that started when I was just 10 years old—I decided to switch fields and pursue a career in software development. This transition began during my master’s studies, where I worked on an AI-based project that reignited my childhood dream.

My journey into software development truly began when I was working as a data scientist intern. I expressed my interest in software development to my employer, and they graciously allowed me to participate as a junior Python developer. This opportunity was pivotal; I received invaluable support and a clear path for growth, eventually becoming a software developer and even leading a team for one of the company products.

Embracing the Challenge

After immigrating to Canada, I expanded my experience into the cloud domain, which opened up a new world of opportunities. For me, programming is akin to solving puzzles. I thrive on the challenge of having my mind engaged in finding ways to fit different pieces together to solve problems. This passion for problem-solving is why I love what I do.

Contact Me

Feel free to reach out to me if you have any questions or would like to discuss a project.

Get in Touch

Fill out the form below and I will get back to you as soon as possible.