With experience and training to use agile approach to deliver applications using TDD, OOP, in teams and with friendly/supportive pairing skills, and hands-on experience with technologies such as Ruby on Rails, React, Node.js, PHP, C#, HTML, CSS, and others.
Also my previous profession (construction project manager), and education (BSc in civil engineering) gave my wide experience in analysing/solving problems, setting priorities, dealing with stress, time management and planning ahead to meet deadlines, integrating with teams and people from all walks of life and backgrounds, as well as facing and effectively communicating with clients to help deliver at the end a product that meets their requirements/needs.
Below is a table of my major GitHubprojects:
|What-Zen||This was my final project at Makers Academy during weeks 11 & 12, the app helps users plan and manage their tasks to deliver a project, and allows them to chat together on the same project page to avoid losing focus while planning their work.||React, Firebase, Cypress, Node.js|
|My Notes||I developed this very handy, personalised notes application, during my learning of Ruby on Rails in my own time as I knew I shall be using it in one of my future projects at Makers Academy.||Ruby on Rails / RSpec|
|@cebook||This is a simple mimic of facebook that I developed with the desktop warriors team during weeks 8 & 9 in our Makers Academy coding boot camp.||Ruby on Rails / RSpec|
|Thermostat||This is a node.js application I created during my 5th week at Makers to demonstrate how fast I can learn a new technology and its TDD to deliver a full stack web app.||Node.js, Jasmine|
|Timer||I created my own application to calculate the time taken to carry out a function/method by running it 100 times for each input quantity and taking the average time taken. Quantity starts from 5000 elements and goes up to 300000 in increments of 5000. This was part of learning about algorithm complexity.||Node.js, Jasmine|
Below is a table of some projects (and their links) that I completed before joining Makers boot camp:
|Maya-in-the-park||An online flash game, where Maya (my eldest daughter) is chasing some candies in the park and the player needs to help her pick enough candies to extend the timer before the game ends.||Flash|
|Vapulator||This is an application to help those who like mixing their own e-juice for their e-cigarettes. It takes the required specs and calculates the proportions required from all ingredients to mix the final volume of liquid.||Visual C#|
|Text-guard||This program helps you convert any text you want to send to others with complete confidentiality into a sophisticated numeric code that can only be translated back to text using Text Guard lite with the same MINOR version number.||Visual C#|
- Self Teaching:
- - Since childhood I was so attracted to software development, and started with Basic on my commodore 64 back in the 80s. Later on in university I started reading books about C, then C++. As well as working for free during a summer holiday in a hardware company fixing desktop systems from scratch depending on the specifications set by our clients and installing all required software and operating system.
- - Later on I started learning Visual Studio and wrote few programs using Visual C#, 2 of which are Text Guard lite, and Vapulator.
- Problem Solving:
- - I believe that without problems, there will be no jobs for us out there, so they never scare me, they just tease my brain, and the harder the challenge, the more I get excited and commit to finding the best solution.
- - With this mindset, I managed to develop a stable, calm, and analytical approach to solving problems I face on my day to day life, or at work, asking the basic questions of:
- How they started (or what is the final requirement).
- What are the possible solutions and what are their consequences.
- Which one/s is/are the most relevant to the case I have in hand.
- What are the costs of each possible solution (money, time, memory, clarity of code, ease of use and integration with other parts of the project).
- Decide and start implementing the solution, while testing it regularly during implementation.
- Monitoring the performance after implementing a solution and ensuring it's inline with our requirements/expectations.
- Agile, scrum, and Pairing techniques:
- - At Makers, I practiced a lot of pairing and agile approach to deliver a project in accordance with the client's requirements, on time, clean and DRY, and fully tested.
- - Working in teams, we'd regularly (twice a day) do stand-ups to discuss briefly where each pair stand with their tasks and any blockage they're facing and help each other solving them. Then plan our works before our next stand-up.
- - Then every other day we'd have a retro to look at the bigger picture and analyse where the project stands from the plan put in place at the start phase and eliminate any deviation from it.
- Makers Academy (January 2019 to March 2019)
- As London’s leading software development boot camp, Makers Academy students learn how to code in 16 intensive weeks and are set up with all the skills needed to become a developer. The boot camp focuses on:
- Agile methodologies
- Object Oriented Design
- Test driven development and behaviour driven development
- Pair programming
- XP values
- HTML, CSS, Flexbox, bootstrap
- SQL (mySQL, Postgresql) & nonSQL (firebase)
- RSpec, Jasmine
- Heroku, AWS
- Other qualifications
- BSc. in civil engineering – Alexandria University- Egypt 2002.
- NVQ Level 6 “Construction Contracting Operations Management” – UK 2015
- Black CSCS card (Construction Industry Training Board “CITB” – UK) 2015
- SMSTS (Site Management Safety Training Scheme – UK) 2015
- MCIOB (Chartered Construction Manager – UK)
- GMICE (Graduate Member of Institution of Civil Engineers – UK)
- Arabic (mother tongue)
- English (fluent)
- Russian (fair)
- French (fair)
This is what I did before starting the adventure at Makers boot camp:
- Spie Batignolles International (Dubai - September 2015 to December 2018 - Project Manager)
- NSCC International Limited (Qatar - September 2014 to September 2015 - Project Manager)
- EQCC-PORR (Qatar - May 2013 to February 2014 - Project Manager)
- Orascom Construction Industries (Dubai - December 2010 to April 2013 - Project Manager)
- Dutco Balfour Beaty (Dubai - August 2007 to November 2010 - Project Manager)
- Skanska (UK - April 2004 to July 2007 - Project Engineer)
- May Gurney (UK - June 2003 to February 2004 - Assistant Site Agent)
- Misr Raymond Foundations (Egypt - July 2002 to March 2003 - Site Engineer)
- - Next to coding, my other childhood obsession was with flying, and I managed to make my dream come true in 2009 when I got my PPL (Private Pilot Licence) allowing me to fly my family and friends in single piston engine airplanes.
- - One of the quietest and calmest experiences you can ever have is diving 40 feet below water and merging with the beautiful nature and creatures living in harmony far away from all the pollution generated by humans. With my Padi Advanced Diver qualification I grab any opportunity to dive whenever possible, particularly when I visit the red sea in Egypt.
- - When I get a chance, I enjoy reading for authors like Dan Brown, and Sidney Sheldon.