OĞUZHAN
KARAGÜZEL

Language Türkçe

Full Stack Developer,.NET C# JS CSS HTML ,EF CORE ASP.NET API

A little about me


Hello,
I was born in Trabzon and lived in Trabzon with my family until my high school graduation. I graduated from Hacettepe University with a degree in Physics Engineering. Currently, I am married and residing in Istanbul. I have honed my skills through the BilgeAdam Boost Junior Full Stack Developer training program and graduated from the program in July 2023.
The BilgeAdam Boost Junior Full Stack Developer training program provided me with rapid advancement in my software development skills during the training period. Additionally, the program has allowed me to continually keep my skills up to date through seminars and valuable resources offered by BilgeAdam. Throughout this journey, I have discovered a passion for finding innovative solutions to complex problems and thoroughly enjoy collaborating with talented individuals from diverse backgrounds.
In my leisure time, I take great pleasure in spending time with my family, playing computer games, and riding motorcycles. Furthermore, I find immense enjoyment in reading and studying books in the fields of philosophy and physics. These hobbies not only provide me with mental and emotional balance but also satisfy my curiosity and enable me to constantly enhance my knowledge.

SKILLS

React

★★★★☆

  • Proficient in using React, a JavaScript-based UI (User Interface) library
  • Experienced in developing UI using a component-based approach
  • Proficient in functional components and state management using React Hooks

CSS

★★★★☆

  • Proficient in CSS (Cascading Style Sheets)
  • In-depth understanding of CSS selectors and specificity
  • Expertise in CSS box model and layout techniques
  • Skilled in creating responsive designs using media queries
  • Familiarity with CSS frameworks (e.g., Bootstrap) for rapid development

Visual Studio

★★★★★

  • Proficient in using Visual Studio as an integrated development environment (IDE)
  • Experienced in working with various programming languages within Visual Studio
  • Comfortable with advanced code editing and debugging features of Visual Studio
  • Familiar with version control integration (Git) in Visual Studio
  • Able to effectively manage projects and utilize testing and deployment tools within Visual Studio

Visual Studio Code

★★★★★

  • Proficient in using Visual Studio Code
  • Skilled in working with multiple programming languages and file types in Visual Studio Code
  • Experienced in customizing Visual Studio Code with themes and extensions
  • Adept at utilizing powerful editing features, such as IntelliSense and code snippets, in Visual Studio Code
  • Familiar with terminal and source control integration in Visual Studio Code

C#

★★★★★

  • Object Oriented Programing, SOLID, KISS, YAGNI
  • Layered Architecture (N-Tier, Onion)
  • .NET Framework, .NET Framework Core
  • Database Connection (Entity Framework Core,MSSQL,Azure SQL Server)
  • Web Development (ASP.NET, ASP.NET CORE, ASP.NET MVC, ASP.NET API)
  • LINQ, IDENTITY ETC...

HTML

★★★★☆

  • Proficient in HTML (HyperText Markup Language)
  • Expertise in semantic HTML markup for enhanced accessibility and SEO
  • Skilled in responsive web design principles and techniques
  • Knowledge of HTML5 APIs and features
  • Experience in form validation and ensuring accessibility standards
  • Able to integrate HTML with CSS and JavaScript for dynamic web experiences

JavaScript

★★★★☆

  • Proficient in JavaScript, a client-side scripting language
  • Experience in DOM manipulation and event handling
  • Knowledge of ES6+ features and modern JavaScript syntax
  • Skilled in asynchronous programming with Promises and async/await
  • Familiarity with JavaScript frameworks (e.g., React)
  • Experience in server communication using XHR, AJAX, and Fetch API

Cache

★★★★☆

  • caching and distributed caching solutions
  • Setting up and managing Redis clusters
  • Implementing pub/sub messaging patterns using Redis as a message broker
  • Redis Pattern-Matching Subscription for efficient message filtering
  • Redis replication for data redundancy and high availability
  • Redis Sentinel for automated failover and monitoring

Message Broker

★★★★☆

  • Cloud AMQP (Advanced Message Queuing Protocol)
  • Dockerizing Message Broker solutions
  • Configuring and managing RabbitMQ, including exchange and binding operations
  • Information about various Exchange types, including Direct, Fanout, Topic, and Header
  • Advanced queue architecture concepts, such as Round-Robin Dispatching, Message Acknowledgment, Message Durability, and Fair Dispatch
  • Designing message patterns, including Point-to-Point (P2P), Publish/Subscribe (Pub/Sub), Work Queue, and Request/Response
  • Using MassTransit and Enterprise Service Bus(ESB) to architect robust and scalable messaging solutions

Other Tools

★★★★★

  • WEB PUBLISH
  • DOCKER
  • NUGET
  • AGILE/SCRUM
  • WATERFALL
  • GIT
  • AZURE DEVOPS

SQL

★★★★☆

  • Relational Database Management System (RDBMS)
  • Advanced SQL Queries (Joins, Subqueries, Stored Procedures)
  • Database Design and Optimization
  • Database Administration (Backup, Restore, Security)
  • Indexing and Performance Tuning
  • Data Manipulation Language (DML) and Data Definition Language (DDL)
  • Cloud Database
  • Microsoft SQL Server, Azure SQL Database

Web API

★★★★☆

  • Proficient in developing RESTful APIs using ASP.NET
  • Experience in designing and implementing Web API endpoints
  • Skilled in handling HTTP requests and responses using the HTTP verbs (GET, POST, PUT, DELETE)
  • Knowledgeable in using attribute-based routing and URL conventions in Web API
  • Experienced in implementing authentication and authorization mechanisms for securing Web APIs
  • Familiarity with serialization formats such as JSON or XML for data exchange
  • Able to perform validation and error handling in Web API
  • Capable of documenting and versioning Web API endpoints

EDUCATION

TONYA ANATOLIAN HIGH SCHOLL (2008-2011)
YAVUZ SULTAN SELİM ANATOLIAN HIGH SCHOOL (2011-2012)

I am a science graduate


HACETTEPE UNIVERSITY - PHYSIC ENGINEERING (2013-2019)

During my university education, I tried to improve myself outside of my field. I was also interested in subjects that I was curious about such as iconography and anthropology. I studied 3D drawing program called 3ds max. In my field, I took care to advance myself, especially in quantum physics.

There are 10 laboratory courses in the physics engineering department. Thanks to these laboratories, my research, development, reporting and production skills are highly developed.

I took concrete steps into the world of software thanks to my esteemed teacher Thanks to Prof. Dr. Yiğit GÜNDÜÇ. I started to improve myself in the field of software with Python and C, which I learned from him.

Then I learned the basics of software and hardware with the microprocessors course. I worked with Intel 8086 and learned assembly programming language.

Then I did an internship at a company called Zeno Bilişim, which is an expert in the field of CRM and makes new breakthroughs in the field of Iot (Internet of Things). During my internship, I developed and executed a project on pit scanning and waste container sensors and produced a product.

BİLGEADAM BOOST JUNIOR FULLSTACK DEVELOPER TRAINING PROGRAM (2023-2023)

I joined Bilgeadam's junior fuulstack developer training program in 2023 to enter the software world and create a product. During the first 5 months: I learned the concepts of algorithm, oop, solid,layered architecture with the C# programming language, thanks to my dear teacher Fatih Kaan AÇIKGÖZ. In addition, I made lots of practice and developed projects with my esteemed teacher Fatih BAĞCIOĞLU.

Then I completed my back-end education by developing my graduation project with my dear teacher Gamze ALTINELLİ. Thanks to this project, I also experienced the concepts of agile and scrum.

After my graduation project, I learned html, css, javascript, react languages with my dear teacher Onur Alp AYDINOnur Alp AYDIN. I also practiced a lot in these languages with my dear teacher Cem Mert ŞİMŞEK. At the end of a month, I completed my front-end training.

Then I completed my education by doing my internship at Bilgeadam institution.


BİLGEADAM BOOST Projects

Remember Me
Project Link

Description:

In Bilgeadam boost training, we developed a Windows Form application with waterfall methodology with my teammates. The aim of the project was to develop an application in which the user could track their diet, calculate calories, determine various parameters based on the entered data, and receive health tips.

After a week of hard work with my teammates, we successfully completed the project and even exceeded the expectations.

First of all, let's talk about the drawbacks of the project: When the language option is selected as Turkish, the food names still appear in English. This is because there are no Turkish names for the dishes in the database. Additionally, our color choices and default photo selections in Frontend can be described as mediocre.

What we were asked to do in the project and what we accomplished can be listed as follows:

  • User can add food to the database.
  • The user can choose any time and add meals.
  • The user can organize the food they consume according to the meal or a certain time interval.
  • Based on the data received from the user, the body mass index was calculated, and the user was informed.

Improvements that exceeded expectations:

  • Language option added
  • The food was filtered and shown to the user according to their diet type.Users with a normal diet can see all foods, vegetarians can see vegetarian and vegan food, and vegans can only see vegan food.
  • In addition, various information and recommendations were given by displaying the BMR and NMR values to the user based on the activity level they provided while registering to the system.

Potentially developable aspects:

  • Graphics can be added.
  • The system can automatically generate and present reports to the user as a file.

My Teammates

Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item


FirmFlow
Project Link

Description:

This project is a graduation project from the Bilgeadam boost program. Scrum methodology has been applied in this project.

The demands of the project are as follows;

  • There will be a site administrator, and this administrator will be able to add companies to the system database and add managers to this company.
  • When the company manager is added, an e-mail address with @bilgeadamboost.com extension will be created, and a notification e-mail will be sent to this address.
  • The company manager will only be able to add employees to his company.
  • Employees will be able to request advances, leave, and allowances, and the company manager will be able to respond to these requests.
  • Requests will be validated according to various information such as the employee's gender, working time, salary, etc. All necessary validations will be provided when adding a company or appointing a manager.

With my teammates, we completed the project completely in 4 sprints for 1 month.

If we talk about the missing sides of our project; basically no downside. The best criticism that can be made may be the table layout. Criticism can be brought about not using the Area structuring. It was used first. However, its use was abandoned due to other problems.

In our project, we have completely fulfilled all the demands.

The parts of our project that we exceeded expectations are as follows; In the e-mail sent to the user using JWT, a link has been sent to create the password. A default password is not created. HTML validations are also included.


The project has not been uploaded to github so that people in education cannot access the program directly.To login to the system; site.admin@bilgeadam.com 1234

My Teammates

Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item
Portfolio Item


Spectra Utils
Project Link

Description:

The NuGet package made to step into the world of NuGet as a jr. software developer.

I turned the SpectraUtils library, which is simple and experimental, into a NuGet package.

If you want, you can download the package as SpectraUtils.

  • Name and surname correction methods. (oĞuzHan KAragüZEL => Oğuzhan KARAGÜZEL)
  • Translate turkish letters to english. (oguzhan karaguzel.)
  • Simple username creation (oguzhan6291)
  • Password generation and hashing. (%19A]a!5)
  • Various validation Attributes.
    • [MinimumAge(18)]

      public DateTime birthDate { get; set; }
    • [TCIDValidation] // Id number validation for Türkiye

      public string Identity { get; set; }
    • [AllowedExtensions(extensions: new string[] { ".jpg", ".jpeg", ".png", ".pdf" }, maxFileSizeInBytes:1024*1024*2)]

      public string File { get; set; } or IFormFile

To get the package

  • Source Repository
  • .NET CLI : dotnet add package SpectraUtils --version 1.0.4
  • Package Manager : NuGet\Install-Package SpectraUtils -Version 1.0.4
  • Paket CLI : paket add SpectraUtils --version 1.0.4
Portfolio Item
Portfolio Item
Portfolio Item



My little blog



  • Blog Item

    Bitwise operations in C#

    In this very long article, I tried to include All Bitwise operations. It has been a good resource for novice software developers like me or those who have just been trained.

    To read the article
    Blog Item

    Object oriented programing and Aristotle

    A brief introduction to the philosophy of object-oriented programming. Understanding Aristotle is a must!

    To read the article

WHO AM I
  • I am a family man who is married and has 2 cats.

    I adore computer games. I especially love real-time strategy, role-playing and souls games as you can see in the photo.

    I like to drive two-wheeled vehicles. especially motorcycles.

  • I am very passionate about software. I continue to do algorithm exercises especially after the training program is over.

    The same applies to physics. Although I can't spare the time I spend for software, I do physics from time to time. Although not now, I aim to do a master's degree in physics engineering, which is my own field.

    In addition, being a physics engineer allows me not only to have the infrastructure of the software side, but also to have the hardware part.

  • My positive traits

    I am prone to teamwork.

    I do not hesitate to seek and produce new solutions.

    I try to master every detail of the project I'm working on.

    I'm very hardworking.

  • My negative traits

    I smoke.

    I rarely have trouble focusing and my day is unproductive.

    When I'm focused, I forget the world and talk to myself about what I'm doing in the moment, which can be uncomfortable for my teammates.

    I need English speaking practice.

Contact Me

Address

Yedikule / Fatih / İstanbul / Türkiye