4
Request a talent

Hello

Let us know about your hiring needs and we will help you find the best talent.

Request now

Marwa Gamal

Egypt - 3 years of Experience

About me

A results-driven professional with a background in Safety Assurance Engineering and a transition into Data Analysis. With a degree in Electronics and Communication Engineering, I bring a strong foundation in technical problem-solving, data-driven decision

My personality traits

Innovative problem solver
Flexible
Goal-oriented
Analytical thinker

Technical skills

Agile Methodologies (Scrum, Kanban) Flutter HTML/CSS MySQL Object-Oriented Programming (OOP) Python SQL TCP/IP Networks C Programming and problem-solving

Education


KFS University

Bachelor's degree . Engineering

From 2014 to 2018

Courses and Programs


Advanced Data analysis

IBM

From Sep 2024 to Nov 2024

Data analysis

Sprints

From Aug 2024 to Sep 2024

Experience


Safety Assurance Engineer Job

ENR

Jun 2020 - Aug 2024

Get free access to our talents till Dec 2025

To get the contact info, please sign up now as a company

To download the CV please create a company account

Hello again,


Log in to your account

or
Don't have an account? Join Us

title_name

Register for free today and start your journey to finding the best talent

or
Have a company account on Sprints?

Password Recovery

or

Account verification

Log in to your account

or
Don't have an account? Join Us

title_name

Register for free today and start your journey to finding the best talent

or
Have a company account on Sprints?

Password Recovery

or

Account verification

const route = $(this).data('route'); $(this).addClass('loadingbar primary').prop('disabled', true); $.ajax({ type: 'GET', url: route, data: 'json', success: (response) => { $(this).removeClass('loadingbar primary').prop('disabled', false); window.open(response.join_url, '_blank'); }, }); }); $(document).ready(function() { const $techShiftBanner = $('#tech-shift-banner'); const EIGHT_HOURS = 8 * 60 * 60 * 1000; const techShiftHiddenTime = localStorage.getItem('techShiftBannerHiddenTime'); const currentTime = new Date().getTime(); if (!techShiftHiddenTime || currentTime - parseInt(techShiftHiddenTime) > EIGHT_HOURS) { $techShiftBanner.removeClass('tw-hidden').addClass('tw-flex'); localStorage.removeItem('techShiftBannerHiddenTime'); } $('.close-tech-shift-banner').on('click', function() { $techShiftBanner.fadeOut(); localStorage.setItem('techShiftBannerHiddenTime', currentTime.toString()); }); const $agfBanner = $('#agf-banner'); const agfHiddenTime = localStorage.getItem('agfBannerHiddenTime'); if (!agfHiddenTime || currentTime - parseInt(agfHiddenTime) > EIGHT_HOURS) { $agfBanner.removeClass('tw-hidden').addClass('tw-flex'); localStorage.removeItem('agfBannerHiddenTime'); } $('.close-agf-banner').on('click', function() { $agfBanner.fadeOut(); localStorage.setItem('agfBannerHiddenTime', currentTime.toString()); }); }); $("#user-mode-toggle").on("change", function() { }); const itiErrorMap = ["Invalid number", "Invalid country code", "Too short", "Too long", "Invalid number"]; $(document).ready(function() { var removeItemsTitle = ""; if (removeItemsTitle != '') { Swal.fire({ html: '

The' + ` ${removeItemsTitle} ` + 'is currently not available for purchase and removed from your cart

', icon: 'info', showCancelButton: false, backdrop: 'static', allowOutsideClick: true, }); } if (isNotActivateAccountRoute && (mobileRequired || nameRequired || needUpdateType)) { let model = $('#popup_complete_profile').html(); if (typeof model === 'undefined') { return; } model = model.replaceAll('phone', 'phone_number'); model = model.replaceAll('error-msg', 'phone_error_msg'); model = model.replaceAll('valid-msg', 'phone_valid_msg'); Swal.fire({ html: model, icon: 'question', showCancelButton: false, showConfirmButton: false, backdrop: 'static', allowOutsideClick: false, customClass: { content: 'p-0 text-left', }, onOpen: () => { $('[data-toggle="tooltip"]').tooltip(); renderPhoneField('phone_number'); }, width: '32rem', }); } }); let iti; let phoneNumber = null; let countryCode = null; function renderPhoneField(id, defaultCountry = 'eg') { const input = document.querySelector("#" + id); if (!input) { return; } input.setAttribute("dir", document.body.dir); iti = intlTelInput(input, { hiddenInput: () => ({ phone: "mobile", country: "country_code" }), initialCountry: defaultCountry, separateDialCode: true, nationalMode: false, }); countryCode = defaultCountry; input.addEventListener('countrychange', (e) => { countryCode = iti.getSelectedCountryData().iso2; }); input.addEventListener('keyup', (e) => { phoneNumber = e.target.value.replaceAll(' ', ''); }); } function validatePhone(id, returnValue = false) { const input = document.querySelector("#" + id); if (input) { let errorMsg = ''; let error = false; if (!input.value.trim()) { errorMsg = "Phone is required."; error = true; } else if (!iti.isValidNumber()) { const errorCode = iti.getValidationError(); errorMsg = itiErrorMap[errorCode] || "Invalid number"; error = true; } if (error) { if (returnValue) { return error } $.toast({ text: errorMsg, bgColor: '#f63c3c', textColor: 'white', hideAfter: 10000, position: 'bottom-right', icon: 'error' }); } return error; } }