I try to make silicon compilation catch up with advances in software compilation: free, open source and easy to use. Toward that goal, I study the use of reinforcement learning and graph learning to automate the physical design process, eliminating the required human expertise.
Check My Blog
I worked at the Systems Research Group and Cloud Efficiency. My goal has been to propose and implement more efficient solutions that increase datacenters resource utilization and save costs for Azure clients.
As a Research & Development Engineer, I collaborated with the business team to analyze clients needs and propose technology solutions to the market needs. In addition, I researched and executed best practicies in software development processes.
Some of my contributions included:
- Wrote well-researched technical proposals that address a specific need.
- Directly interacted with clients and stakeholders to communicate the status of ongoing projects.
- Designed and implemented a DevOps pipeline that improved team productivity and reduced time-to-production releases.
- Led a small software team executing an end-to-end SDLC.
As a Research Assistant, I collaborated with an interdisciplinary research team with the goal of advancing quantitative medicine and health care. My role has focused on building support tools and computational platforms for mathematical modeling and simulation of biomedically relevant systems.
Some of my contributions included:
- AlgoPiper: a web-based software that enables building pipelines and workflows of independent computational algorithms through a drag-n-drop graphical user interface.
- TURING: a crowd-sourced platform for algorithms and analysis pipelines focused on time- and state-discrete dynamical systems. It features an easy way for developers to publish their own algorithms and link them with others to create workflows for the analysis and use of systems within mathematics and in applications to other fields such as biology and engineering.
I joined Sheida Nabavi lab in an effort to develop novel computational methods to identify candidate biomarkers of drug resistant in heterogeneous cancer. I got trained on analyzing large heterogeneous datasets of human DNA and RNA. My work during this internship inspired my Master's thesis project. In addition, I have developed a simulation tool to augment Copy Number Variation (amplifications/deletions) in whole genome sequencing in addition to targeted sequencing.
As a Teaching Assistant, my role has been to contribute to the educational mission of the Computer Science department that aims to provide high quality learning experience for students. I applied my teaching philosophy in:
- Grading and proposing class projects for undergraduate students
- Supporting undergraduate students during office hours
- Assisting instructors of "Probabilistic Performance Analysis of Computer Systems" and "Algorithms" undergraduate courses
I have been the main contributor to AlgoRun open source platform. AlgoRun is a Docker-based container template for computational algorithms. Using AlgoRun, we have been able to build AlgoPiper to enable independent software modules and algorithms work together. AlgoPiper enabled superADAM modules to get alive. The objective of superADAM is to be able to create a workflow for mathematical modeling and simulation using polynomial dynamical systems framework (based on the different software modules) that could be used by a 3rd party program.
As a Research Assistant at the Center for Hardware Assurance, Security and Engineering at Electrical and Computer Engineering Department, I have worked on a Big Data project sponsored by Comcast that analyzes and predicts anomalous user behavior through analytic and learning algorithms.
I have utilized different Python packages to build user models and predict anomalies followed by data visualization. I have also used Apache Spark to transform our models into ones that are ready for Big Data analysis (in terms of volume and velocity).
I was responsible for performing teaching or teaching-related duties to assist faculty members, professors and department heads. Responsibilities included:
- Assigned material in class as needed.
- Tutored and mentored students.
- Obtained materials needed for classes, including texts and other materials.
- Recorded grades and inform students of their final grades.
- Arranged for teaching observations.
- Met with students during office hours.
- Helped professors and teachers develop course plans.
- Assisted with student conferences.
- Led discussion sections.
- Created and wrote materials such as a syllabus, visual aids, answer keys, supplementary notes, and course websites.
Used Microsoft SharePoint technology to automate some grading processes in the school management system, ITWorx Education.
Check Projects on GitHub: https://github.com/abdelrahmanhosny?tab=projects