As a tech enthusiast and indie game developer, I have had the opportunity to work on a variety of projects. I have published two games; one is a challenging puzzle and runner game, while the other is a more casual and relaxing experience. In my professional life, I have developed a strong background in natural language processing (NLP) and have used this knowledge to create advanced algorithms and models. This experience has given me a deep understanding of the complexities of language and how it can be applied in various contexts.
In my personal life, I am an avid chess player, enjoy hiking, and have a passion for watching anime. These hobbies not only provide me with a sense of relaxation and enjoyment, but also help to keep my mind sharp and engaged.
In addition to my technical expertise and project management skills, I have also gained valuable experience through my freelance work. I am known for my ability to work well with others and to think outside of the box to come up with creative solutions to complex problems. I am eager to continue exploring new opportunities and challenges in the tech industry, and am confident that my skills and experience make me an asset to any team.
PROJECTS
Games
In this game, you play as a fox who needs to be saved from eagle attacks. To protect the fox, you draw lines on the screen by touching it. This creates barriers that the eagles cannot cross. As you play, you collect stars which can be used to unlock different costumes for your fox. With these costumes, you can make your fox look unique and stylish. The game is easy to pick up and play, making it perfect for casual gamers who want to have fun on their mobile device.
In this game, the player controls a king piece in a game of chess. Like a runner game, the player must move forward on the chess board to avoid falling behind the camera. Along the way, they will encounter puzzles that they must solve to continue moving forward. However, enemy chess pieces will be positioned on the board, blocking the player’s path. The player must use their wits to find a safe path for their king to reach the end of the board.
This project is a prototype game agent created using MATLAB. It features a main character at the center of a map who uses an AI algorithm called a genetic algorithm to learn how to shoot zombies that approach in waves from across the map. The goal of the project is to demonstrate the capabilities of the genetic algorithm for learning and adapting to new challenges.
This game is a replica of the popular mobile game Flappy Bird. It has been created using Scratch, a visual programming language. In this game, the player must control a bird and navigate it through a series of obstacles by pressing a button to make the bird flap its wings. The game is challenging and fun, and I used Scratch because it is always fun to explore new technologies.
This project is a replica of the popular casino game blackjack, created using the Python programming language. In addition to the regular gameplay, the project includes rule-based and machine learning agents, as well as a counter-bot, to test the ability of artificial intelligence to win at gambling. The machine learning algorithm used is logistic regression.
This project is a static tetris game that is played through the console. The game is written in the C programming language and was my first ever game and completed project. It is static because it does not allow players to move the falling pieces once they have started to fall, which makes the game more challenging than the traditional tetris game. The goal of the game is to score as many points as possible by creating complete rows without leaving gaps in the playing field.
Freelance Experience
In this freelance project, I had the opportunity to develop my skills in Android mobile app development, specifically using the JAVA programming language and the Firebase online database. Through the process of creating the app, I gained a deeper understanding of how to effectively utilize these tools to build a functional and user-friendly application. I was able to complete the project entirely independently, showcasing my ability to take on a project from start to finish and successfully deliver a high-quality end result. This experience has further solidified my expertise in Android app development and has given me confidence in my ability to tackle similar projects in the future.
Inventory Management system
In this project, I developed a custom desktop application for a commercial company specializing in imports. The purpose of the application was to streamline and improve the tracking of the company’s inventory. To achieve this, I integrated the application with the e-bay API, allowing it to retrieve detailed information about purchased products in real-time. I implemented the application using the Python programming language and the PyQt5 library, allowing for a user-friendly interface. To ensure that the changes made in the application were permanently stored, I utilized Firebase Firestore as the online database system. Working on this project allowed me to gain valuable experience in developing custom software solutions and improve my skills in Python and PyQt5.
Crypto Arbitrage Bot
The aim of this project was to create a alert bot for a cryptocurrency trader that would be able to compare the prices of various coins on different investment platforms. To do this, I used Python to request data in JSON format from one of the platforms, and employed the BeautifulSoup library and lxml HTML parser to extract data from the other platform. In the process, I gained valuable experience with a range of technologies and techniques, including Python programming, API requests, web scraping.
AI - Machine Learning
Paraphrase Generation
In this project, my colleague and I investigated the use of the MT5 algorithm for paraphrase generation in Turkish language. We implemented a deep learning model and applied techniques such as tokenization and stemming to preprocess the data. Through this project, we gained hands-on experience with natural language processing and deep learning, as well as insights into model evaluation. Overall, our findings demonstrate the potential of MT5 for paraphrase generation in Turkish and highlight the importance of careful preprocessing in achieving good performance.
This project involved the research and implementation of emotion detection models for audio files. The objective was to create a web-based service that would enable users to select from various machine learning algorithms to predict the emotional state of an individual based on their voice recording. To evaluate the efficacy of these models, a bespoke dataset in Turkish was generated and utilized. A range of libraries were utilized in the project, including librosa, scikit-learn, keras, and tensorflow. In addition, a Docker container was created to facilitate the deployment of the service.
During the course of this project, I gained valuable experience in the application of machine learning techniques to the task of emotion detection from audio data. I also gained proficiency in the use of a variety of relevant libraries and tools, such as Docker, streamlit, and tensorflow. In addition, I gained insight into the challenges and considerations involved in creating and evaluating custom datasets for emotion detection tasks. Overall, this project has provided me with a comprehensive understanding of the field of emotion detection from audio data and has equipped me with the skills and knowledge necessary to develop and deploy effective solutions in this domain.
Question Answering
In this project, my colleague and I trained a question answering model for the Turkish language using a variety of algorithms, including Electra, BERT, Albert, and MT5. Through this process, I gained experience with natural language processing and deep learning. Comparing the different algorithms required extensive research and learning, providing valuable insights into the capabilities and limitations of each model. Overall, this project allowed me to deepen my knowledge and understanding of these cutting-edge technologies and their applications in natural language processing.