Home

Husameldin Sharaf (Sam) - Java 11 senior backend developer
[email protected]
Location: Sunnyvale, California, USA
Relocation: No
Visa: USC
Husameldin Sharaf (Sam)
Java 11 senior backend developer
7324443158
[email protected]
Sunnyvale, CA
No
USC


Summary
Google Storage API and Stackdriver Logging interface: Developed against the Java Google Storage and NIO API. Also, used the Stackdriver Logging queries to monitor the cloud logs.
Netflix GraphQL and Springboot 2.7: Developed from scratch a new application using GraphQL and Springboot 2.7. Also, used the new OffsetDateTime Java API to account for the time zone.
AWS-IAM, Docker, Docker-compose, Docker-machine and Kubernetes: Comfortable with stateless micro-service deployment in AWS and Openstack. Developed Java API which interfaces with AWS Aurora for PostreSQL and MySQL. Also, used and got familiar with the kubectl various commands
JDK 8: Data structures, Streams-API, Lambda, map-reduce, Comparator, CompletableFuture pipelines and Channel APIs of NIO2
Apache-Druid: Carried out the deployment of the Druid-Broker, Druid-Coordinator and Druid-Historical nodes. Also, developed scripts to ingest aggregate data from Hadoop/Hive deep storage to an intermediary media then to Druid Historical nodes.
JVM tuning and production monitoring: Solid knowledge of using the Java Mission Control to profile and monitor production environment and set alerts for performance hazards such as thread contention and deadlocks.
DevOps CI/CD: Liquibase, Maven plugins and archiver, Gradle, GitHub, Jenkins, SonarQube.
Splunk power user, reporting and logging: Developed a Splunk form and configured Splunk indexes. Deep knowledge of all logging frameworks, namely, Java util logging (JUL), SLF4j, Log4j, Log4j2, Lilith and Otros Log viewer
Multithreading APIs and SPIs: LMAX disruptor, EE7 asynchronous managed executor service, Spring threads and Java 8 CompletableFuture pipelines.
Spring 4.x, 5.x, Spring-boot 2.x, Jboss/Wildfly/Websphere/Weblogic: Rest-Controller, Spring scopes, Spring AOP, Asynchronous Servlets 3.0 and HTTP events (comet-style asynchronous events). CDI-Decorators, Event listeners, Timer services, Interceptors, Runtime server Plugins, JMS
SOA, Web services and Security: JAX RS 2.x, Basic Authentication, and Cookies. RESTful Microservices using Jersey, RESTEasy and Apache CXF. OAuth 2.0 and OpenId implemented by Apache Shiro and Keycloak.
Linux and JVM Security: Developed APIs compliant with NIST CSF and NiST 800-171. Also, set-up ssh-agent for Linux . Set-up the JVM Keystore using the Keytool. Used Kerberos for API security
Code coverage, integration and stress testing: Uses Java reverse engineering tools to produce the UML Class diagrams. Uses Junit, TestNG, Mockito, CheckStyle, Jacoco Pluggin, Jmeter, PMD, SonarQube rules and Apache HTTP server benchmarking
Python - Anaconda: Imports/exports Python virtual environment and developed SqlAlchemy 1.1 API in a Flask app
Hadoop - Hive: Solid on Hadoop dfs commands to move Hadoop paths among Hadoop hosts or to/from local
JIRA, Confluence and Apple-Radar, Apple-CST, Apple-connectme
Oracle RDBM, MySQL, PostgreSQL and Transaction Management technologies: EJB 3.1 and Spring transaction management as well as JSR-338 JPA 2.1 implemented by both Eclipselink and Hibernate
XML and JSON technologies: JAXB/MOXy Eclipselink, XSLT, XSD, localization and serialization, Jackson and fasterXML JSON api
Degrees and certification:
M.Sc. of Science and Engineering: Computer Science. The American University in Cairo graduated Feb 07 with GPA: 3.143
Bachelor of Science: Computer Science. The American University in Cairo graduated Feb 98 with GPA: 3.279
Wells Fargo, Fremont Java 17 Backend developer November 2022 to present
Deployed and debugged a Spring-boot 2.7 application using Docker-compose, Docker-machine, and Google cloud Kubernetes
Initiated the development of a Netflix-dgs GraphQL version 5.5.3 Springboot application backed by two simultaneous datasources.
Designed Hibernate/JPA entities with consistent bi-directional one-many and many-many relationships.
Used Java Flight Recorder and Java mission control to profile the memory heap and the garbage collection. Also used them to debug Threads starvation and deadlocks. Used Java Mission Control rules to set alerts for the JVM metrices which affect the system throughput and downtime.
Walmartlabs, Sunnyvale Java Backend developer March 2021 to October 2022
Initiated the development of a Kickstart-GraphQL version 12 Springboot application backed by two simultaneous datasources.
Designed Hibernate/JPA entities with consistent bi-directional one-many and many-many relationships.
Used Java Flight Recorder (JFR) to instrument the JVM metrices such as memory and CPU usage in runtime.
Configured the Jacoco plugin for a multi-module maven application. Also, configured the SonarQube rules.
Configured the maven pom.xml to integrate the map-struct api. It is a better practice to conceal the persistence layer from the client.
Configured the Springboot Actuator to expose custom health check as well as the kubernetes Liveness and Readiness endpoints.
Symphony communications, Palo Alto CA Java Cloud developer Sep 2019 to Feb 2021
Used the Google cloud Stackdriver Logging queries to monitor the cloud logs and used the kubectl various commands
Configured the Jacoco plugin for a multi-module maven application. Also, configured the SonarQube rules.
Used AWS-IAM tokens to access the enterprise docker registry.
Developed a Splunk form with optimal queries and configured Splunk indexes.
RMS, Fremont CA Java micro-services developer Mar 2019 to Aug 2019
Used Docker for local development, deployed and used port-forwarding to debug an application deployed in Kubernetes cluster
Under Dropwizard 1.3.8, developed REST services along with their Junit and integration test.
For an on-premise Kafka stream message queue, developed a micro-service with custom serialization and the deserialization.
Used NodeJS for a quick turnaround of simple web-services
Developed a real-time health-points monitoring API which listens to asynchronous events.
Apple, Sunnyvale Micro-services developer for realtime analytics Jul 2018 to Feb 2019
Developed Python scripts which was deployed in the ETL Framework to ingest data from Hadoop to Druid Historical nodes.
Also developed HDFS scripts to move Hadoop aggregate date from one linux box to another
Configured an optimal Spring-Boot micro-service which exposes MySQL payload via JBoss RESTEasy platform and multiple Transaction Managers. Ensured high performance via implementing interceptors and embedded Undertow as well as JVM monitoring and tuning.
Extensively used Hive and Hadoop dfs for either cp/mv within the Hadoop dfs or copy to/from local commands.
For a quick turnaround light-load service: used Anaconda to create an exported Python environment. Then developed a Flask application to publish CRUD REST endpoints backed with and SqlAlchemy 1.1
Setup ssh-agent and knows the most of the .ssh/config file parameters. Also used Kerberos for API security.
Self-development interval between projects from Mar 2018 to Jun 2018
Developed a POC for a client/server Java app using Gradle, SpringBoot, embedded Undertow and WebSockets 1.1
Developed a java service API to scan a log file of tens MB size, and stream it into smaller files while not breaking sentences between two consecutive small files. This effort scored high fault-tolerance, speed and optimal use of the hardware resources.
Acquired the Java 8 certification

Equinix, Sunnyvale, CA Java Enterprise micro-services architect Aug 2017 to Feb 2018
In a Springboot app developed and configured Java 8 CompletableFuture pipelines as to emulate the high throughput of services backed by messaging systems
For APIs integration with multiple cloud providers, developed a developed an API to handshake and authenticate with Google cloud, AWS and Azure.
Demonstrated Kafka streams in a POC within a Spring-boot application.
Knowledgeable about techniques to minimize the auditing and the failure-logging of micro-services in production.
Narvar, San Francisco, CA - Senior Java Developer Aug 2016 to Jun 2017
In a Springboot app designed the architecture of a system of: (1) User authentication / authorization using Spring OAuth 2.0 and OpenId specifications (2) Asynchronous CPU-expensive services. (3) Expensive disk-access via messaging services.
Configured two Spring Transaction Managers within one Spring Boot 1.4 app
For Oracle and PostgreSQL designed JPA Entities with One-Many Bidirectional consistency, also upgraded Spring Boot 1.3 to 1.4
Developed microservcies using CompletableFuture pipelines with custom Push-Back Policy
Developed Spring Rest endpoints which supports Pagination
Used docx4j in the development of a service to generate xlsx spreadsheets during runtime.
Walmart, Sunnyvale, CA - Senior Java Developer Jul 2016 to Sep 2016
For Oracle designed JPA Entities with One-Many Bidirectional consistency, and developed the corresponding CRUD REST endpoints using Apache CXF
Configured Jenkins pipelines and SonarQube rules profiles.
Deployed against OpenStack cloud and installed Oracle DB 11 on an Oracle Linux 7 VM
April 2016 Workshop: Munich, Germany Java EE
In April 2016, Sam participated in Java EE 6/7 best practices workshop where he studied the following:
Micro-services architecture and testing, best procatices
RESTful multichannel architectures as well as Security in Java EE
Profiling using Interceptors to monitor and audit performance
Continuous Integration and code quality using Maven, Jenkins, SonarQube and Jacoco
Stress-Testing using J-Meter and ab Apache, Integration-Testing and Unit-Testing

Apple, Sunnyvale CA - Senior Java Developer Sep 2014 to Mar 2016
Contributed in an NLP framework and used ANTLR4
Designed and developed an ANTLR 4 grammar along with its visitor pattern used by the parser.
Optimized the ANTLR parser for performance
Developed an API similar to log4j MDC
Maintained and expanded a JaxB SAX XML parser
Developed an "Entity-Attribute-Value" model resolver
CISCO, Milpitas CA - Senior Java EE Developer Apr 2014 to Sep 2014
Configured the LMAX Disruptor framework as a Spring MVC 4.0 managed service, Spring 3.2 threads were deployed.
Developed the Comet style and the server push service to trigger the HTTP events
Used the Spring Event System to behave as a container managed Observer pattern.
Configured LOG4j2 and used GIT for version control.
Used the ByteBuffer, CharBuffer and Path APIs of NIO2
The development stack: Tomcat 7.x, JDK 7, Spring 4.x, Jackson 1.9, LOG4J2, LMAX Disruptor
Standard and Poor's, NY US - Senior Java EE Developer Dec 2012 to Dec 2013
Designed and developed a RESTful hub application which resolved the Single-Sign-On authentication of the target secured REST services.
Deployed EJB 3.1 Session Beans to implement a Timer Service which refreshed the Single-Sign-On cookie on a scheduled basis.
Used threads synchronization to synchronize clients for the scheduled job.
Used Altova MapForce to produce XSL files which comply with either XSLT 1.0 or XSLT 2.0.
Properly handled the data internationalization and localization during the XSLT and the JAXB transformation.
Used JAXB to un-marshal a data set acquired via consuming a RESTful service.
Reverse-engineered an XSD using the corresponding XML structure, then produced the JAXB classes.
Implemented the task to probe a remote file system using the SAMBA client API (JCIFS ).
Configured the Eclipse IDE for hot (continuous) deployment on remote Weblogic 11/12 servers.
Developed JAXB marshalling and dispatching to Sonic ESB via JMS.
Merck Pharmaceutical, Whitehouse Station, NJ - Senior Java Developer, Jun 2011 to Jul 2012
For a stock screening enterprise application, Sam committed the following activities:
Participated in the design, and development of the UML class and activity diagrams using Modelio
Implemented RESTful clients using Spring RestTemplate where Basic Authentication was resolved using AOP interceptors.
Setup GlassFish JNDI entry for the JPA EclipseLink 2.x ORM module to connect to Oracle via JTA, and thus securing container managed transaction
Developed an API to provide CRUD services for a DB schema. Developed the persistence layer by applying the JSR-317 JPA 2.0 specifications implemented by EclipseLink 2.x . Spring 3.2 transaction management was used to commit the deliverable.
Bank of America, Princeton, NJ - Senior Java Developer, Feb 2010 to Apr 2011
Developed the persistence layer applying the JSR-317 JPA 2.0 specifications implemented by Hibernate.
The development stack used to commit the projects included: Eclipse, Spring, Hibernate, SLF4j, Log4j , OtrosLog Viewer deployed to Weblogic 10/11
JC Penny, Dallas, TX - Java Developer, Aug 2008 to Dec 2009
Designed and developed Generic parameterized API which used PECS technique to implement type-safe add and remove methods for a generic collection.
Developed threads and used jvisualVM to debug threads deadlocks and synchronization
Centrivision Cairo, Egypt - Java developer, May 2005 to Jul 2008
Developed servlets, and SQL queries involving different join types, grouping and aggregate functions
Used Linux Bash along with VI editor
Keywords: continuous integration continuous deployment business intelligence database information technology California New Jersey New York South Carolina Texas

To remove this resume please click here or send an email from [email protected] to [email protected] with subject as "delete" (without inverted commas)
[email protected];759
Enter the captcha code and we will send and email at [email protected]
with a link to edit / delete this resume
Captcha Image: