Sektöre yeni adım atanlar için kaynaklar
Sektöre yeni başlayan arkadaşlar için neyi ne zaman nasıl öğrenmelerine yardımcı olacak bir kaynak bütünü
Yöntem
Bu kategorideki kaynaklar, sizin daha iyi kod yazmanız için teknoloji bağımsız tavsiyelerin verildiği kaynaklardır. Doğrudan iş yapış biçiminizi ve koda bakış şekliniz ile problemleri çözme gücünüz artıracak kaynaklardan oluşur
Kitaplar
İşe yeni girdiğinizde
Temiz kod
- Clean Code – Robert C. Martin
- Refactoring: Improving the Design of Existing Code – Martin Fowler
- Code Complete – Steve McGonnel
Kariyer tavsiyeleri
- 97 Things Every Programmer Should Know – Kevlin Henney
- Software Craftsman, The: Professionalism, Pragmatism, Pride - Sandro Mancuso
- The Pragmatic Programmer, 20th year edition – David Thomas
- The Passionate Programmer - Chad Fowler
OOP
- The Object-Oriented Thought Process – Matt Weisfeld
- Head First Object-Oriented Analysis and Design - Brett McLaughlin, Gary Pollice, David West
Testing
- Unit Testing Principles, Practices, and Patterns - Vladimir Khorikov
1-3 Yıl arası tecrübe ile
Testing
- xUnit Test Patterns: Refactoring Test Code - Gerard Meszaros
- The Art of Unit Testing - Roy Osherove
Test-Driven Development
- Test Driven Development – Kent Beck
- Growing Object-Oriented Software, Guided by Tests – Steve Freeman
İyi pratikler
- Working Effectively with Legacy Code – Micheal Feathers
- Extreme Programming Explained - Kent Beck
- The Art of Agile Development - James Shore
- Practices of an Agile Developer - Venkat Subramaniam
- Software Engineering at Google - Titus Winters
Kariyer tavsiyesi
- Pragmatic Thinking and Learning - Andy Hunt
- Apprenticeship Patterns - Dave Hoover
OOP
- The Object-Oriented Thought Process - Matt Weisfeld
- Applying UML and Patterns - Craig Larman
3-5 yıl arası tecrübe ile
OOP
- Head-First Design Patterns – Eric Freeman
- Refactoring to Patterns - Joshua Kerievsky
- Design Patterns: Elements of Reusable Object-Oriented Software – Eric Gama et.al.
- A Philosophy of Software Design - John Ousterhout
Domain-Driven Design
- Patterns, Principles, and Practices of Domain-Driven Design - Scott Millett,
- Domain Driven Design Distilled - Vaughn Vernon
- Implementing Domain-Driven Design - Vaughn Vernon
- Domain-Driven Design – Eric Evans
DevOps
- Continuous Delivery – Jez Humble, Dave Farley
- The Devops Handbook - Gene Kim
- Release It! - Michael T. Nygard
5 yıldan sonra
Mimari
- Software Architecture for Developers - Simon Brown
- Fundamentals of Software Architecture - Neal Ford
- Clean Architecture – Robert C. Martin
- Get Your Hands Dirty on Clean Architecture – Tom Hombergs
- Design It! – Michael Keeling
- Patterns of Enterprise Application Architecture – Martin Fowler
- Pattern-Oriented Software Architecture, Volume 1 - Frank Bushmann
- Building Evolutionary Architectures - Neal Ford
Dağıtık Sistemler ve Mikroservisler
- Building Microservices: Designing Fine-Grained Systems – Sam Newman
- Designing Data Intensive Applications - Martin Kleppmann
- Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith – Sam Newman
- Enterprise Integration Patterns - Gregor Hohpe
- Pattern-Oriented Software Architecture, Volume 4 - Frank Buschmann
DevOps
- Accelerate - Jez Humble
- The Phonix Project - Gene Kim
- The Unicorn Project - Gene Kim
- Site Reliability Engineering - Niall Richard Murphy
Konferans konuşmaları
Buradaki konuşmalar, nasıl düşündüğünüzü ve nasıl iş yaptığınızı derinden etkilyecek ve hayatınıza alabileceğiniz pratik tavsiyeler veren konuşmalardan oluşuyor.
İşe yeni başladığınızda
Genel
- The Art of Code - Dylan Beattie
- The Future of Programming - Robert C. Martin
- Old Is the New New - Kevlin Henney
- Escaping Developer Nightmares - Rustam Mehmandarov
- The Error of Our Ways - Kevlin Henney
Kariyer Tavsiyesi
- Staying Ahead of the Curve - Trisha Gee
- The Well-Balanced Programmer - J.B. Rainsberger
- The Long Road - Sandro Mancuso
- Programming Is the Easy Part - J.B. Rainsberger
- Yazılımda Ustalaşma Yol Haritası - Lemi Orhan Ergin
- Habits of Efficient Developers - Daniel Lebrero Berna
- How to Take Great Engineers & Make Them Great Technical Leaders - Courtney Hemphill
- Career Advice For Junior Software Developers - Dave Farley
- Be the Leader of Your Own Career - Bruno Souza
- The World Needs Full-Stack Craftspeople - Anton Keks
İyi pratikler
- Taking Back "Software Engineering" - Dave Farley
- Code Review Best Practices - Trisha Gee
- Extreme Professionalism: Software Craftsmanship - Victor Rentea
- The Software Craftsmanship - Sandro Mancuso
- Beyond Software Craftsmanship - Eduards Sizovs
- Reading Code Is Harder Than Writing It - Trisha Gee
- The Craftsman's Oath - Robert C. Martin
- Continued Learning: The Beauty of Maintenance - Kent Beck
- Seven Ineffective Coding Habits of Many Programmers - Kevlin Henney
- User Stories considered harmful - Jakub Nabrdalik
Kodlama Teknikleri
- Small Is Beautiful - Kevlin Henney
- Don't Walk Away from Complexity, Run - Venkat Subramaniam
- The Art of Simplicity - Venkat Subramaniam
- Functional Programming in 40 Minutes - Russ Olsen
- Unconditional Code - Michael Feathers
- Safe Refactoring - Jakub Pilimon
- Prime Factors Kata - Robert C. Martin
- The Power and Practicality of Immutability - Venkat Subramaniam
- Let’s Get Lazy - Venkat Subramaniam
- Extreme Programming 20 years later - Kent Beck
Temiz Kod
- Clean Code: The Next Chapter - Victor Rentea
- Temiz Kod Tasarımı - Lemi Orhan Ergin
- Clean Coders Hate What Happens to Your Code When You Use These Enterprise Programming Tricks - Kevlin Henney
- Clean Code - Robert C. Martin Altı kısımlık bir video serisi
- Twelve Ways to Make Code Suck Less - Venkat Subramaniam
- The Art of Clean Code by - Victor Rentea
- Lean Code - Kevlin Henney
1-3 yıl arası tecrübe ile
Tasarım
- The Lost Art of Software Design - Simon Brown
- Core Design Principles for Software Developers - Venkat Subramaniam
- A Case For Outside-In Design - Sandro Mancuso
- Becoming a better developer by using the SOLID design principles - Katerina Trajchevska
- Nothing is Something - Sandi Metz
- Crafted Design - Sandro Mancuso
- SOLID principles - Robert C. Martin
- Yazılım Tasarımı ve Modülerlik Üzerine Yeniden Düşünmek - Lemi Orhan Ergin
- Usable Software Design - Alexandru Bolboaca
- Live Refactoring Towards Solid Code - Bartłomiej Słota
- The Economics of Software Design - J.B. Rainsberger
Test
- The Magic Tricks of Testing - Sandi Metz
- Pragmatic unit testing - Vladimir Khorikov
- Unit Testing like a Pro: The Circle of Purity - Victor Rentea
- Don't be mocked by your Mocks: Listening to your Tests - Victor Rentea
- Domain Driven Testing: Know What You Doing - Dmitry Vinnik
- Testing and Refactoring Legacy Code - Sandro Mancuso
- Effective Unit Testing - Eliotte Rusty Harold
- Testing Legacy Code - Eliotte Rusty Harold
- Testing: Testing - Christina Lee
Test-Driven Development
- Does TDD Really Lead to Good Design? - Sandro Mancuso
- Refactoring & Design Techniques for the Test Driven Development - Roy Osherove
- TDD, Where Did It All Go Wrong - Ian Cooper
- TDD as a design tool - Dave Farley
- The Three Laws of TDD - Robert C. Martin
- Improving your Test Driven Development in 45 Minutes - Jakub Nabrdalik
- Pragmatics of TDD to Evolve Design: part 1 - Venkat Subramaniam
- Pragmatics of TDD to Evolve Design: part 2 - Venkat Subramaniam
3-5 yıl arası tecrübe ile
Domain-Driven Design
- Online Microservices & DDD Konferansı
- Domain Driven Design Through Onion Architecture - Wade Waldron
- What is DDD - Eric Evans
- Implementing Domain Driven Design - Halil Ibrahim Kalkan
- Domain Driven Design: The Good Parts - Jimmy Bogard
- Overview and Core Values of Domain-Driven Design - Michael Plod Part 1/5
- Strategic Design: Domains, Subdomains, Bounded Contexts & Context Maps Michael Plod part 2/5
- Internal Building Blocks: Aggregates, Entities, Value Objects - Michael Plod Part 3/5
- Domain Events & Event Storming - Michael Plod Part 4/5
- Implementation Aspects with Java and Spring - Michael Plod Part 4/5
- DDD & REST - Domain Driven APIs for the web - Oliver Gierke
- Slice & Dice your Monolith with Domain Driven Design - Edson Yanaga
5 Yıldan sonra
Mimari
- Evolving a Clean, Pragmatic Architecture - Victor Rentea
- Software Architecture vs. Code - Simon Brown
- More Testable Code with the Hexagonal Architecture - Ted M. Young
- The Clean Architecture - Ian Cooper
- Hexagonal Architecture in practice - Jakub Nabrdalik
- Majestic Modular Monoliths - Axel Fontaine
- Towards an Evolutionary Architecture - Venkat Subramaniam
- "Good Enough" Architecture - Stefan Tilkov
- Qualities of a Highly Effective Architect - Venkat Subramaniam
- The model-code gap - Simon Brown
- Beyti Code: Growing Hexagonal Microservices with TDD - Lemi Orhan Ergin
- Modular Software Architecture for Pragmatic Developers - Lemi Orhan Ergin
- Clean Architecture and Design - Robert C. Martin
- Thinking Architecturally - Nathaniel Schutta
- Software Architecture for Developers - Simon Brown
- Towards an Evolutionary Architecture: part 1 - Venkat Subramaniam
- Towards an Evolutionary Architecture: part 2 - Venkat Subramaniam
- A Craftsman’s Guide to Designing a Clean Architecture - Marcus Biel
- Mid-sized Building Blocks & Hexagonal Architecture - Jakub Nabrdalik
- Modular monoliths - Simon Brown
- The Art of Visualising Software Architecture - Simon Brown
- Common Mistakes When Moving to Microservices - Jakub Nabrdalik
- When To Use Microservices (And When Not To!) - Sam Newman & Martin Fowler
- Monolith Decomposition Patterns - Sam Newman
- Keynote DDD, CQRS, and Event Sourcing, beyond the hype - Allard Buzje
Konferanslar
- DevTernity
- GOTO conferences
- SCLConf
- Devoxx
- Devnexus
- Istanbul Tech Talks
- QCon
- DevConf.pl
- NDC Conferences
- Devnot
- YOW! Conference
Makaleler
- How to Become an Outstanding Junior Developer
- The qualities that make a great software engineer
- The junior developer’s guide to writing super clean and readable code
- Learn the fundamentals of a good developer mindset in 15 minutes
- Five important lessons from four years as a software developer
- How to avoid these 7 mistakes I made as a Junior Developer
- Lessons I’ve learned from 2.5 years of Software Engineering
- The things I wish I’d known as a junior developer
- Ace your first year as a junior developer with this advice
- Software Testing Anti-patterns
- A practical introduction to Test Driven Development
- How to Stand Out as a Software Engineer in 2021 - Insights & Advice
- How to Learn Something New Every Day as a Software Developer
- Software Engineers Are Made Not Born – How to Become a Great Developer
- The Principles of Functional Programming
Bloglar
- Medium
- dev.to
- InfoQ
- freeCodeCamp
- Vladimir Khorikov's blog
İletişim ve davranışsal
Bu katagorideki kaynaklar, insanlarla iletişim ve "soft skill" konularında.
Kitaplar
- Clean Coder - Robert C. Martin
- Peopleware - Tom DeMarco
- Mythical Man-Month - Frederick P. Brooks Jr.
- Soft Skills - John Sonmez