Jaouher
Kharrat
Engineering Manager - Fullstack Engineer
Info
Telegram
Links
GitHub Medium LinkedInLanguages
English – Professional working proficiency (B2)
German – Beginner
Russian – Native
Skills
Experienced
- Angular
- RxJS
- TypeScript
- JavaScript
- CSS 3
- HTML 5
Skillful
- React
- Redux
- SCSS, SASS
- NGXS
- NgRx
- Jasmine
- Angular Material
Basic Knowledge
- Styled Components
- GraphQL
- Apollo
- Cypress
- Docker
- MobX
- Webpack
- XState
- Node.js, Express.js
- PHP
- MySQL
- MongoDB
- Bash
- Nginx
- Linux (Ubuntu, Arch)
Had experience with
- Vue.js
- Scala
- Java
- WordPress
Hobbies
- Reading
- Travelling
- Board Games
Profile
I have experience building complex and feature rich applications with Angular and applications with React with Redux and GraphQL. I have solid knowledge of JS and TypeScript, Angular features and related libraries like RxJS, state management libraries
I like to solve complex problems like implementation of Jira Query Language search. Proposed and initiated implementation of feature flags to support customisation for different client types. Also pushed initiatives related to technical debt reduction.
I read specifications and source code of used libraries to deeper understand technologies I use. I have a good grasp of HTML and CSS applied to application redesign.
Sharing knowledge is valuable for me: I was leading junior developers, interviewing, doing code reviews and taught schoolchildren web technologies. I write articles on Medium and prepare talks from time to time as I am interested in continuous self-development and professional growth. I would like dig deeper in DDD and architecture.
Work Experience
Senior Front-end developer @ IPONWEB
I've introduced feature flags as intermediate step to full ui customisation for clients. This allowed us to reduce copy/paste and scale better with regular Angular components.
I act as a frontend sub-lead, own epics and push them to delivery.
Senior Front-end developer @ DINS (RingCentral)
I implemented Jira Query Language search with autocomplete to search test cases by filters in single query string
- Applied new design to many pages of our application
- Initiated NGXS data mutations analysis and did subsequent refactoring
- Refactored CI pipelines from JS to Linux utils with Bash, which reduced build time by 4-5 minutes
- Prepared guide and code style for writing application styles
Front-end developer @ T-Systems
I took part in the development of SPA for sellers in offline stores. Due to bad internet connection in shops this SPA was a fat-client with complex business logic on front-end.
- Rewriting the entire application styles to new adaptive design with my colleague
- Leading meetings in english regarding the progress of our redesign work
- Supported admin dashboard in Vue.js
Junior Front-end developer @ Bandito
- Developed landing pages and corporate web-sites with further installation on WordPress
- Refactored and refined projects handed over by freelancers
- Introduced git and SASS into developing process
Teaching experience
Tutor, Epic Skills
I mentored students of this internet technologies school.
Teacher, ITMO University, Children Computer Club
I led the stream of web-technologies courses for children and was in charge of educational programs preparation:
- Frontend basics (Pure HTML, CSS, JavaScript, jQuery, Bootstrap)
- Backend (PHP, MySQL, WordPress)
Courses
Advanced Angular: Enterprise & Architecture
Front-end school #1, T-Systems
Node.js School, Yandex.Money
Higher Education
ITMO University
Master, Web Technologies, 4.87
My thesis was about reactive programming paradigms in the web and its implementations.
ITMO University
Bachelor, Computer graphics teaching, 4.73
With thesis "Development of distant learning modules «CSS and JavaScript» for children computer education"
Projects
ngx-detach-invisible
I developed a PoC directive for Angular. This can be used as an optimization in projects which use default CD for components with heavy templates to prevent rendering when they are not in viewport.
Public speaking
Jira-like search? Easy
Public talk at DINS Slides
Vim: выход есть, пути назад нет
(eng. Vim: there is exit but no way back)
PiterCSS meetup #31 Slides
Процесс визуализации. Стили и спецификация. Flexbox & Grid. Препроцессоры
(eng. Rendering pipeline. Styles and specification. Flexbox & Grid. Preprocessors)
Front-end school #3, T-Systems Slides
Git basics for QA engineers
Talk at T-Systems Slides