About Heba
Arabic
Native or bilingual
English
Fluent
French
Basic
Experience
- DXC TechnologySenior/Lead Software EngineerDIGITAL AND ITMay 2019 - December 2022 (3 years and 8 months)Cairo, EgyptSadad Saudi Payments• SADAD acts as the backbone for Saudi Payment System. It has its own Upload framework integrating internal systems. I worked in Java layer, integrates with Decision Services for Business Rules validation, exposes Web Services for synchronous calls, publishes/subscribes Messages for asynchronous calls & communicates with DB. Part of my daily tasks is supporting ENVs for Reconciliation & Upload services, handling IBM WAS issues due to missing libraries, configurations, ..etc & Oracle application traces due to missing schema permissions, sequences, ..etc. Some of these issues are unexpected like tracing a leakage in MQ connections or unfamiliar like tracing missing Oracle PL/SQL procedure Java Class. Working on Vendor-specific products like IBM MQ, BPM & WSRR to fix configuration issues or peer-working with other teams to trace integration issues.• Implementing Service Component Architecture Removal technical CR to replace SCA with JakartaEE for Reconciliation services. Mapping SCA components to JakartaEE beans, writing JUnit "assembles TDD in testing business not implementation", deploying archives, testing Soap Web Services & Message Beans & Integration testing with BPM & DB.• I worked on Aggregators "special type of SADAD Billers" business CR in Refund Load/Upload Services, adding it to DB entities & XML schema & code extension while maintaining the Strategy pattern.• Working as part of a team on documenting Upload Framework LLD for Client handover then used in technical KT for its comprehensibility. Having deep understanding that implied mentoring & pair programming with other team members for tracing Upload issues & eventually nominated me to lead Uploads' offshore subteam.• As some SADAD services are very complex, I suggested documenting a Testing Walkthrough & enclosing issues with their solution steps to be referenced by DEV & Testing teams. Working as part of a team on it, documenting Reconciliation & Upload services.Alinma Bank•Leading DEV Admin module. I worked with Design team on LLDs, provided technical guidance to DEV team & implemented MicroService cross-cutting concerns. The Client provided a jar that logs Admin actions to DB by binding external configurations. I integrated with it passing logger properties & working around cumbersome parts like injections to Jar's context & binding Runtime dependencies. I used Spring AspectJ where Advice intercepts request to extract logged info & persist it asynchronously using Java Concurrency API for non blocking execution & exception handling.•Working on securing our stateless MicroServices using Spring Security & customizing it for JWT using Spring FilterChain & configuring Authentication Manager. Custom Authentication Provider is implemented for user retrieval & validation. For Web Security configuration, CORS policy, Session Management, APIs' authorities & JWT filters are set. Authenticating user by setting Login URL to FilterProcessesUrl, extracting credentials & passing it to Authentication Provider. Overriding successful & unsuccessful Authentication for JWT retrieval or throwing exception. For Authorization, implementing Spring's Filter to validate JWT, retrieve user & set authentication token on SecurityContextHolder.•Implementing a Java API for KVStore connection. Spring has no integration module with Oracle NoSQL "unlike Mongo". So, implemented a Spring bean to set store configurations, connect & permit concurrent operations. Implementing a Generic CRUD Repository for accessing the store Tables using TableAPI for code re-usability.•Implementing a Java API to connect & communicate with IBM MQ Docker Image. Using Spring JMS & JAXB to pass messages to/from the container. Afterwards CorrelationId is used for synchronous calls & POJO-Message converter is implemented.•Using a Java API that implements Apple PassKit which provides utilities to create, sign & zip pass as a ByteArray. Using Java awt for dynamic pass alters.
- IBMSoftware EngineerDIGITAL AND ITSeptember 2016 - April 2019 (2 years and 8 months)Cairo, EgyptEgyptian National Post Office• ENPO serves almost half of the Egyptian population, handles a massive number of transactions & provides many products & services. I worked vertically in all layers View, Service & DAO. The View is implemented on the server side using Spring JSF integration, Spring JDBC integration for DAL & Oracle SQL as our Persistent Storage.• Working as part of a team on Corporate Saving feature "new Saving product". Implementating View & Service , unit & integration testing with DB & having SIT, UAT & PROD bug free releases.• Implementing other business CRs like introducing account's deactivation reason which encounters working in all application layers.• Implementing a new feature for uploading pension files to Web application where I used a Java Excel API for reading, validating & manipulating the data.• Supporting all application Prod tickets where I'd hands on Jasper reports as well.• Documenting the Web application for technical orientation KT. Clarifying DEV ENV setup steps, used tools & technologies, application products & referencing a service for identifying the LLD workflow.Commercial International Bank• Working with Vendor-specific BPM product that provides a web portal for Business users to interact with the Bank's core system. It integrates with ODM for business rules' validation & middleware for core banking communication. I worked within a team on implementing Import Documentary Collection "IDC" Issuance, Import Letters of Credit "ILC" Issuance & Credit Offering Sheet "COP" business processes.• I participated in the full business process lifecyle starting from regular internal meetings with BA, Architect & Middleware team & external meetings with Client's Technical & Business teams to discuss LLD, UI & integrations then implementing these wireframes & requirements. For FE, customizing Client-Side services with Javascript & consuming/exposing Soap Web services for BE integrations. Supporting SIT & participating in UAT Client demos.
- Asset Technology GroupSoftware EngineerDIGITAL AND ITJune 2016 - August 2016 (3 months)Cairo, Egypt• Working on an Angular/Spring pilot for implementing an internal product using the same technologies.• Gaining basic Knowledge about some of EMC tools like Documentum.
Recommendations
Be the first to recommend Heba
Help this freelancer shine by sharing your experience working together.
These freelancer profiles also match your criteria
Agatha Frydrych
Backend Java Software Engineer
4.7
(3)
2
Baptiste Duhen
Fullstack developer
4.6
(4)
5
Amed Hamou
Senior Lead Developer
4
(2)
7
Audrey Champion
Web developer
4.3
(3)
4
Education
- Diploma in CSInformation Technology Institute ITI2016Enterprise and Web Applications Development - Java Technology
- BSc of Science in Physics and CSFaculty of Science, Ain Shams University2012