Safa Keskin
Verified Expert in Engineering
Full-stack Developer
Safa is a computer engineer with a full-blown passion for web technologies. For the past few years, Safa has worked with various architectures ranging from Docker to AWS, with multiple programming languages like JavaScript/TypeScript, Java, Go, and Python. He has worked with React and Node.js as his main stack on several projects, making him highly confident in expanding upon tech stacks built around these two technologies.
Portfolio
Experience
Availability
Preferred Environment
React, Node.js, Amazon Web Services (AWS), AWS Lambda, Amazon DynamoDB, TypeScript, Serverless Framework, Cloud, AWS CloudFormation
The most amazing...
...system I've developed was a sustainable living platform that is integrated with a bunch of services to let customers make theirs homes sustainable.
Work Experience
Full-stack Engineer
Commencis
- Developed a front-end web application designed following the mobile-first approach for an investment company located in Berlin. React is used with TypeScript, Material-UI, Auth0, and Recharts. The app is used in WebView inside a mobile app.
- Built a private UI component library using React with TypeScript based on Material-UI and capable of serving components on a Storybook client.
- Tested React applications using Jest and Enzyme by writing unit tests and integration tests.
- Integrated ESlint and Prettier for both React projects.
- Created and monitored CI&CD pipeline using GitHub Actions and monitored CD status using AWS EC2.
- Used SonarQube to ensure there was no code smell and the projects had A-Class code quality.
- Developed endpoints for back-end microservices using Java with Spring Boot and tested those microservices. Used Mockito in some parts.
- Built a React Native application using styled-components, a replica of a banking application's limited version that consists of login and money transfer flows.
- Utilized Gerrit as the review platform and used Jenkins to monitor build processes.
Software Development Specialist
TAV Technologies
- Maintained Resource Management System (RMS) coded in Vue.js using Vuex and Vue Router, focusing on a Gantt chart that communicates with back-end services using WebSocket and REST.
- Managed Flight Management System (FMS) coded in Vue.js using Vuex and Vue Router, which consists of an editable table continuously updated by incoming events from WebSocket connections.
- Developed CRUD tables from scratch to control resources shown in FMS and RMS, without using a third-party library, using Vue.js, HTML, and SCSS.
- Used Jira as an agile development platform to follow the scrum development methodology.
- Utilized Jenkins to monitor the build processes of the application.
Machine Learning Engineer
Proente
- Developed a machine learning algorithm that predicts possible defects by analyzing continuous data using Python as the programming language and Decision Forest as the model and ran the model on Azure Machine Learning Studio.
- Created an infrastructure using Apache Spark to run machine learning algorithms that analyze data consumed from Apache Kafka topics and store results in Apache Cassandra. The project was developed with the support of a freelancer.
- Served all applications inside containers, using Docker and docker-compose.
Full-stack Developer
Proente
- Developed and maintained the back-end of Prowmes, a Manufacturing Execution System (MES), using Node.js with Express and Sequelize following microservices architecture that consists of nine microservices.
- Built front-end of Prowmes from scratch using React with Ant Design and BizCharts, to provide an enterprise-level web interface while managing state through the app with Redux.
- Established communication while transferring data using REST and WebSocket between microservices and back end and front end.
- Used MySQL and PostgreSQL to store data in persistent storage while using Redis as a cache layer.
- Developed a microservice coded in Java using Spring Boot framework that fetches production plans from a PostgreSQL database table and runs a modified version of OptaPlanner's project job scheduling algorithm with domain-specific heuristics.
Experience
Prowmes
https://proente.com/en/prowmes/TAV-RMS
TAV-FMS
Mobile App to Monitor Investments
Blockchain-Based Electronic Voting System for Elections in Turkey
https://doi.org/10.1109/UBMK.2019.8907102Education
Bachelor's Degree in Computer Engineering
Istanbul Technical University - Istanbul, Turkey
Skills
Libraries/APIs
React, Node.js, REST APIs, Vue, Vuex, Recharts, Scikit-learn
Tools
GitHub, Git, Jira, Sequelize, SonarQube, Auth0, Azure Machine Learning, RabbitMQ, Docker Compose, Jenkins, Bitbucket, Figma, AWS CloudFormation
Frameworks
Jest, Material UI, Express.js, Ant Design, React Native, Redux, Apache Spark, Spring Boot, Mockito, Serverless Framework
Languages
TypeScript, JavaScript, CSS, Python, HTML, HTML5, Java, Go, Scala, C, C++
Paradigms
Agile Software Development, REST, Functional Programming, Object-oriented Programming (OOP), Design Patterns, Scrum
Platforms
Docker, Apache Kafka, Linux, MacOS, Amazon Web Services (AWS), Blockchain, AWS Lambda
Storage
PostgreSQL, MySQL, Redis, MongoDB, Amazon DynamoDB
Other
Software Engineering, Enzyme, Front-end, APIs, Front-end Development, Storybook, WebSockets, Styled-components, ESLint, Vue Router, User Interface (UI), Front-end Architecture, Full-stack, Apache Cassandra, Smart Contracts, BizCharts, Cloud
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring