Written and Spoken Ideas.
I've used written or spoken words to present ideas in 727 pieces, from essays to notes, from book notes to podcasts. Ideas you want to feed into your AI to help you think better.
Explore them below or use the search functionality to find specific topics.
They are not meant to be advice. Instead, they are ideas I learned or discovered in my experiences.
Click a post title below to jump to that post.
Filters:
- Learning Domain-Driven Design Part I: Strategic Design
Chapter notes from Learning Domain-Driven Design Part I: Strategic Design
- Mediations #37: What is true friendship for you?
A true friend is the one who randomly calls or rings your doorbell.
- Ignorance in investing
I wish I learned how to invest before I had 10€ to save.
- AI code review fights between Claude Code and Devin
Claude Code develops, opens a pull request Devin reviews and adds comment. Claude addresses comments. Devin reviews again and adds new comments, then Claude addresses, then Devin...
- Humans are cyborgs
I read a text written by AI in a book. I mean, the AI is kinda right when it says humans are cyborgs already.
- Mediations #36: Who has the knowledge? Me? Or the LLM?
Learning from a single AI prompt that cost $35.
- Wild Times with Claude
Building a personal blog cms app with Claude Code
- An Ode to Things That Do One Thing Well
It's pure joy to use products that do one job and do it well.
- Mediations #35: Learning. Again. And Again.
Not only learning how to use AI, but also how a team works going forward.
- Mediations #34: Living with one rule for a better life
It's not 'do less' or 'earn more money.'
- OSTEP: Chapters 1-4
Operating Systems: Three Easy Pieces, Chapters 1-4
- Mediations #33: Overcoming Content Overload
- The Obstacle Is The Way—Book Review, Summary and Notes
A short book focused on overcoming obstacles with Stoic principles.
- Offline gets back but online is still here
- Product still shouldn't be left to (only) product managers
- Mediations #32: Why don't you get the compensation increase you think you deserve?
The context you might be missing can lead to a wrong perception.
- Uncertainty and fear can be eliminated by training (29a2)
- Perception Shapes Our Reality (29c)
- Three Simple Questions to Collect Feedback (40c1)
- Not Learning from Software Failures (99)
- Don't trust people's judgments in conflicts (20j1)
- Tools for managing managers (76a)
- How to debug a dysfunctional team? (92a1)
- Engineering Managers with a Debugging Mindset (98)
- Easy is the enemy of good
- Engineers have more power than they think (79a)
- Capitalism creates wealth through innovation and productivity (96)
- Minimizing costs and trading frequency increases market returns (97)
- Investor returns decrease as market motion increases (97a)
- The Unbearable Joy of Sitting Alone in A Café
- Mediations #31: Increasing Efficiency and Effectiveness with Psychology & Economics - Part II
How Autonomy and Self-Regulation, Psychological Safety, Cognitive and Emotional Load can help
- Mediations #30: Increasing Efficiency and Effectiveness with Psychology & Economics - Part I
How Socio-Technical Systems, Institutional Economics and Evolutionary Economics Theories can help
- Added Ko-fi to this blog
- Solving Problems Worth Solving
Discovering how problem-solving shapes a journey from computer engineering to leadership
- Mediations #29: Distributed Discussions
A subtle shift in an Internet user's behavior might change the world.
- Mediations #28: Evolving Software Engineering with AI
Is the definition of software engineering changing with AI?
- As an engineer, you have more power than you think
- Admit that you like it
- Mediations #27: Who Will Build Your Products Tomorrow?
Chasing seniors alone creates an unsustainable system
- Mediations #26: Relying on AI too much
Confirmation bias in AI usage leads to blind trust and costly errors. Learn how cognitive biases affect decision-making with AI tools and solutions.
- Mediations #25: Plan Slow, Act Fast
Plan thoroughly upfront to execute projects faster later.
- Growth of startups is often constrained by the economy (84a)
- How to create a tech strategy? (84b)
- Why are villages poorer than cities? (92b)
- What you're NOT doing (46e2)
- Humans can't understand increasing scope well (9c1)
- Approaching growth when faced with competition (29a1)
- The Quest for Happiness (93)
- Compassion is the foundation of well-being (94)
- Justice and compassion - to forgive is not the same as to forget (95)
- Mediations #24: Reading a lot vs. Reading Well
- The Invisible Gun
A management concept I remind myself often. As a boss, you carry a gun. It's up to you to figure out which size.
- The Root Cause of All Incidents
How small mistakes often cause incidents, the importance of simple solutions, and leadership's role in fostering quality problem-solving.
- Find the story behind the behavior (41b2)
- Driving Empathy with our commonality as humans (44g3)
- Division of Labor (92)
- Fundamentals of increasing the quantity of work (92a)
- Belonging together to something increases likeness (20l)
- I Can't Worry About The Whole World
I reduced news overload with curated attention: focus locally and preserve compassion through selective awareness.
- Mediations #23: How to Train Yourself Under Work Deadlines
- Mediations #22: Deglobalizaiton
- A Weekly Planning Ritual That Works
- Mediations #21: On AI vs. Intellect
- The One with The Wrong Problem
Reflection on how ego and stubbornness led to focusing on the wrong problem, and the journey of finding the right one.
- Mediations #20: What you do on bad days matters more than on good days
Only 8-9% of people keep their New Year’s resolutions, but achieving them requires consistent action beyond motivation.
- How many times did you solve the wrong problem?
- Self-discipline is a long-term character investment (52a4)
- No achivement alone (52a3)
- Love is submission (52a1)
- Pride deludes us (52a2)
- On Owning a Website
Personal websites offer unique freedom, flexibility, and connection unlike physical creations, balancing creative freedom with challenge of maintenance.
- Online social networks are worthless (91)
- No contest, no progress (1i1)
- Imaginations are dangerous (46j)
- FOMO is selfish (46e1)
- Selfish goals are unattainable (30c1)
- Wisdom is learning how to handle your ignorance (7c)
- Mediations #19: Social Media Impaired My Learning
Learning from social media was my excuse to keep consuming while lying down on my couch.
- Living without algorithms
My experiment to live without recommendation engines or algorithmic feeds. The battle against popular culture driven by algorithms.
- What I miss from Twitter and new commitment
- Writing is for everyone and no one
- Mediations #18: Building Trust Methodologically with Right Tools
Leaders often overlook building trust, yet intentional actions can boost team performance. Learn key tools to systematically build trust.
- Thinking Beyond the Desk
- Mediations #17: Improving My Schedule as a Manager
How I balance meetings, solo work, and reflection time. While meetings dominate, uninterrupted time for planning and spontaneous chats is crucial for managers.
- On Retaining People
Organizational change is inevitable; leaders must adapt, understand they need to let some people go, and create environments where teams thrive with evolution.
- Mediations #16: Transforming Complaints into Actions
Transform complaints into action by asking, 'What do you expect from me?' Foster trust and focus on outcomes in your team.
- L8Conf and DecompileD Conferences
- Act as if... (77c)
- People model you as a leader (87a)
- Mediations #15: The Real Meaning of a High Bar
Discover the meaning of a high bar: ownership, growth, and sustainable excellence. Learn how leaders inspire teams to unlock potential and redefine standards.
- In ambiguity, use a compass, not a map (29b)
- Form teams around visions (56m)
- Contain a workaround in a scope (39b)
- Tears fall for a reason (62b)
- Mediations #14: Withholding Judgment—The Forgotten Way
Discover the power of withholding judgment to make better decisions, foster understanding, and navigate the complexities of modern information overload. Learn how to pause, assess, and experiment for more informed choices.
- You can't always have the best of the best talent (53b1)
- Mediations #13: How to Delegate Successfully
The key to successful delegation is that leaders should delegate their strongest skills to people who are both capable and interested in learning them.
- Bridging the Gap: Understanding the Illusion of Transparency in Communication
Discover how the illusion of transparency affects communication, influencing how our emotions and intentions are perceived by others and shaping our interactions.
- Influence—Book Review, Summary and Notes
A comprehensive framework of six universal principles of influence that drive human behavior.
- Seek diversity (46i)
- Helping with chores improves relationships (20n)
- Acting together improves group cohesion (20m)
- Mediations #12: Engineering Managers Leading a Big Project—Step by Step
How engineering managers lead cross-team projects: aligning problems, stakeholders, solutions and everyone in between.
- People unite behind a common goal (24a1)
- Too much collaboration is detrimental
- Mediations #11: Seek Goals That Will Change How You Live
Defining the right mindset and the strategies to set goals correctly
- Listen to your gut when you commit too much (72a)
- Learning How to Lead with Transparency
Learning what transparency means and how to find the right level of transparency.
- Psychology of Money—Book Review, Summary and Notes
A profound book shows the psychological behaviors' impact on our investment and financial decisions.
- Separating Authority from Expertise (19h)
- Prepare better for removing access to a particular thing as a leader (30b2a)
- Separate your desire from the actual value (7b)
- Managers work anytime, anywhere (16e)
- Commitment brings consistency (38a1)
- The power of negotiation during a scarce talent market (90)
- Authority without vulnerability doesn't work (33b)
- People follow authority figures (9d)
- More followers make the idea correct (20k)
- We conform to peers' behavior more than others (44g1)
- Defending against social proof and peer-suasion (44g2)
- Defending against a person's likeliness (19g)
- You're weakest when you're the strongest (7a)
- Let all emotions out inside you to show vulnerability (3b6a)
- Metacognition: Thinking about thinking (68a)
- Strong dedication has many doubts behind (46d2)
- What is cash flow (88)
- Keep track of your expenses (89)
- Compartmentalize your teams around visions (24b2)
- Increase your strategic thinking as an engineering director (16d)
- Turning rivalries into teams (20j)
- Creating your image as a leader (87)
- Be comfortable with yourself (46h)
- Transparency ≠ Saying everything
- Organizational Communication Index (86)
- Organizational (Executive) Leadership Index (84)
- Organizational Design Index (85)
- Understand what you can change (46g)
- How to build a coaching mindset (83)
- Techniques for coaching (83a)
- Giving feedback with a coaching mindset (23i)
- Improving Team Performance (81)
- Measuring Engineering Productivity (82)
- LLMs = Ignorance (69a)
- LLM shouldn't be used for learning (73a)
- Mediations #10: On Job Promotions—Learn The Rules
Learn the promotion cases holistically. Once you know the rules of the game, you know how to play and win.
- Why do you micromanage? (3b1a)
- Audit your team in three pillars (3b7)
- Compliments increase likeness (20i)
- How being liked helps you to get your job done (20f)
- Increase your physical attractiveness (20g)
- Find similarities to increase likeness (20h)
- Compliment to improve occasional good behavior (4e)
- What affects your investment decision (80)
- Build a product mindset in engineers
- Understanding Ex-pat life and discrimination (75)
- Becoming a CTO (76)
- Meeting Facilitation Techniques (77)
- What I Need From You Matrix (77a)
- Lightning Decision Jam (77b)
- Using Engineering Metrics (78)
- Tracking Capacity Allocation (78a)
- Managing Tech Debt (79)
- Your job title depends on the organization you're in.
- Mediations #8: On Good Software Engineers
I set out to find a simple definition that would help managers frame the fundamental things they expect from software engineers.
- How to Read a A Book—Book Review, Summary and Notes
A profound book teaches how to extract more information from any book through disciplined reading to transform reading approach by helping to read faster and more effectively.
- CTOs are expected to do more in 2024
- Employer market will turn into employee market in time
- Short definition of a good software engineer
- Mediations #9: Retiring from The Idea of Retirement
I changed my mind and will not wait for retirement. Instead, I will focus on aligning financial investments with activities I enjoy till my last breath.
- Building A Strong Ownership Culture in A Team
Building a culture of ownership and continuous learning through one-one-ones, delegation, and clear goals, while acknowledging the effort and adaptation needed.
- Krishnamurti and Seneca on Freeing the Mind
Krishnamurti recommends to reject culture and Seneca says don't follow the crowd. Both are the same but one is more applicable.
- How to Give Feedback on UI/UX Design as an Engineer
Engineers should focus on two fundamentals when giving feedback on UI/UX designs: understanding the users' needs and feasibility.
- Integrating Deep Work into Manager’s Life (74)
- Nature heals
- Mediations #7: Two words to change mind
Learning mental models
- An article about Biden's debate on TV and defining retirement
- Embracing the Joy of Missing Out (JOMO)
JOMO is about the importance of prioritizing meaningful experiences over constantly trying to keep up with popular culture.
- Learn How to Work with Average Talent
- Mediations #6: Know where you spend your money on
Learning how to keep a budget.
- Selective Learning (73)
- Click and Run (20d)
- Perceptual Contrast (20e)
- Feedback is mutual (23h)
- The Rule of Reciprocation (30d1)
- Mediations #5: Life Priorities and I'm Back
My goal is to ensure this is the most helpful email you get in your inbox.
- Can you explain how you manage your team?
- Saying Something Once is NOT Enough
- Increasing Sales Through Human Psychology (72)
- Vier Schritte für einen Neustart
- Consuming News Weekly, Instead of Daily
- Ending My Debate with Latest or Daily News
Escaping the News Cycle for Intentional Living
- Hawthorne Effect (4c)
- Leveraging Hawthorne Effect at Work (4d)
- On Listening to Audiobooks
How can I learn from audiobooks while taking walks with my dog?
- Defining Transparency in Organizations (71)
- Good and Bad Transparency in Organizations (71a)
- Why Urban Design Matters (70)
- Weekday/Weekend Concepts are Useless
Focusing on continuation rather than chunking the time.
- There are No Analytics on This Blog
No page and visitor tracking. What I care about the conversations we have, not analytics.
- New Books for Systems Thinking and Software Architecture and Strategy
- Reading a QR Code without a Phone or a Scanner
- Added Decap CMS, finally
- ADRs and RFCs: Their Differences and Templates
Differences between ADRs and RFCs in software development. When and how to use each with practical guidance and templates for better decision-making.
- Rituals, not Traditions
- Learnings on Dealing with Ambiguity
When things are chaotic, and there are many unknowns, good leaders approach things differently and systematically, sometimes without knowing.
- Number One in Formula One (54d)
- Using the Promotion Process to Grow as a Manager (8j)
- Passing Down The Experience
A small story explaining my realization of the value of knowledge-sharing
- Using Delegation Checklist (3c3a)
- Essentialism Book Review and Notes
A book I used as a think-along partner when I felt the pressure that I have to accomplish all the things waiting for me.
- Mediations #4: Building A Personal Library
The importance of building a personal library full of unread books.
- My wish list for the world in 2050
- Blocking crawlers for training language models
- Mediations #3: Real-life vs. Online Relationships
The importance of close relationships and the impact of social media on relationships
- Today I published all my notes in my Zettelkasten
- Reading and Criticizing with Enough Generosity (69)
- Mediations #2: Taking Better Notes
Short Intro to How I Take Notes
- Retrospectively look at what you do and change your strategy
- Thinking Retrospectively Helps to Correct The Course (68)
- Mediations #1: Seeking Inconvenience
Relationships and New Beginnings
- No Prioritization, No RFC (66b)
- Don't Use RFCs as A Decision-Making Mechanism (66c)
- Don't Even Try to Form A Consensus (66d)
- Choose Your RFC Audience Correctly (66e)
- Give Enough Time for RFC Reviews (Please, Don't Rush) (66f)
- Don't Publish The RFC and Forget; Follow Up (66g)
- Don't Build an Extensive RFC Template (66h)
- Build The Right Culture First Before RFCs (66i)
- Seek Inconvenience (67)
Do we have to seek convenience everywhere in our lives? I don't think so. Inconvenience brings the forgotten joy.
- How and Why RFCs Fail
When we tried to introduce the Request for Comments (RFC) process to an organization, we failed. Here is what I've learned from my mistakes.
- RFC Process in Organizations (66)
- If there is no business need, there shouldn't be an RFC (66a)
- What I Learned About Getting Better at Giving Talks and Presentations
After years of reading about, learning, and trying public speaking in different forms, here is what I have found.
- On The Purpose of Life
Finding a purpose in life is a difficult journey. Is the journey itself the purpose of life? Or is it something else? Well, I continued searching for why we exist, or at least, why I exist.
- Reflexive Psychology to Learn More About Yourself (46f)
- Pass your words from three doors before you speak (52e)
- Sometimes, it just needs to be felt right (41d)
- Why don't they leave the software to software engineers?
Leaders often guide problem-solving in the software and involve themselves in every decision. Instead, they should clarify the goal and bring transparency to problems.
- Task-Relevant Maturity (53e)
- Maximizing Personal Growth by Understanding Feedback You Get
Even the best of us make mistakes. Taking feedback well is aimed at building a healthy growth habit, identifying the best growth path, and keeping the balance while walking down that road.
- DDIA: Consistency and Consensus in Distributed Systems
Linearizability and its trade-offs, ordering guarantees, sequence number ordering, consensus, and coordination services in distributed systems.
- Resilience comes from recovery (62a)
Understanding how we can increase our resiliency
- Bet on things that won't change (29a)
'Bet on things that won't change rather than predicting how things will change.' — Jason Cohen
- Love the Constraints
Constraints are everywhere. We live and work with them. There is no other way than to love them. Otherwise, they will chase us and pull us down.
- Why Inspectional Reading? (64)
Inspectional reading helps us to learn more about the book before we spend hours on it.
- Sometimes Saying Nothing Tells Everything
We need to know when to shut up and learn when to talk with a few words that we plant like seeds (not too close to each other, but not too far).
- Learning and Understanding (65)
When we learn something, does it mean we understand it? How can we say we understand?
- My Experience Living Without Social Media
How I stopped using Twitter, LinkedIn, Mastodon for 2+ months.
- Moving to Substack
Why and What it Means
- Mektup #53: Was Tuckman Wrong?
My previous teams performed because of the ownership, autonomy, inclusive environment, people-first and full-of-feedback culture, and no over-time and no over-commitment policies we had.
- Measure What Matters Book Review, Summary, and Notes
John Doerr explains OKRs (Objective and Key Results) with many examples from Gates Foundation to Bono and how OKRs help organizations succeed.
- How to Get to The End of a Pile of Unread Books
I cannot read every book. I buy more books than I can read. I'm not counting my wish list even. I have enough books to keep me reading for the next five years. But how do I get to the end of this pile?
- Chesterton's Fence
Chesterton invites us to think about the rationale behind an earlier decision and take action only after we understand why there was a decision in the first place.
- Mektup #52: Multitasking hides design flaws and lowers the quality
When I wrote you the last time about the myth of multitasking, I talked about our attention limit having a value of only one cognitive task. Today, I want to double-click on that attention-demanding creative task and connect it to the quality of results.
- These (damn) Annoying Tenure Engineers
How should you deal with annoying tenure engineers and get unstuck? Blocking tenure engineers should become counselors of innovation and development.
- Mektup #51: There is still hope; there will always be hope
Two earthquakes took the lives of thousands of people (40k+) and impacted millions in Turkey. And I want to talk about how it feels being here in Germany, far away from all of the impacts.
- Three Approaches to Decision-Making Styles (19f)
- How cultures are shaped in the world (63)
The impact of modernization and colonization on Kenya
- Share pros and cons in announcements (20c)
- Mektup #50: How to Build Habits That Last
This is the 50th issue, and I thought it would be good to talk about habits and how I kept my writing habit to bring Mektup to you every second week.
- Trying the feedback (40d1)
- Three Types of Feedback
There are three types of feedback: Appreciation, Evaluation, and Coaching.
- Mektup #49: The Craft of Writing Effectively
How to write effective messages on Slack, Confluence, and Google Docs to convince people? How to build strong arguments in writing at work?
- DDIA: The Trouble with Distributed Systems
The most common and known problems and challenges of Distributed Systems.
- Shift Left on Security
How would you explain the 'Shift Left on Security' to a five-year-old?
- Mektup #48: Lagom, Clutters in Life, and The Habit of The Rich
New year's resolutions, new habits, happiness, and thinking about balanced living.
- One Decision That Removes Hundreds of Decisions
While we can improve our decision-making skills by learning methodologies and mental models and practicing mindfulness, one shortcut helps the most.
- Faucets and Bad Ideas
Ed Sheeran uses the pipe with one faucet analogy. If you're using the pipe for the first time, the first water that comes out is always dirty. You have to push out all the dirt to reach clean water.
- Mektup #47: Techniques and Tools for Energy Management
Do you feel overwhelmed by the distractions at work that don't let you do your job? How many times did your 'focus time blockers' get interrupted? When was the last time did you think about your energy, not only your time?
- DDIA: Understanding How Database Transactions Work
Database transactions are a way to simplify the programming model, and they offer certain safety guarantees for specific errors and fault scenarios.
- Team Topologies Book Review, Summary, and Notes
Team Topologies book is driven by Conway's Law and Inverse Conway Maneuver to help us understand how teams collaborate and communicate.
- Genghis Khan on Friendship (52d)
- The Power of Ritualization: Rituals vs. Routines
We all have daily routines: some of them are tedious, and some of them are delightful. But we're not destined to live ordinary and miserable. Ritualizing gives a sense of satisfaction to the most tedious and regular activities.
- Communicating Organizational Changes (32b)
- The Last Person on Earth (52c)
- Mektup #46: Energy or Time—Which One to Manage?
Everybody talks about managing time to get more things done. Yet, I rarely found conversations around managing energy to get the right thing done.
- Mektup #45: How to Explain Things Clearly
Two strategies to help explain technical things to non-technical people.
- How Zettelkasten Method Works (1a)
- Concluding My Struggle with Note-Taking Systems and Apps, Finally!
I can finally say I have reached the end, and I'm finishing my research and experiments with note-taking apps. I share what I learned in this post and explain how things have changed.
- Why is it so hard to be kind?
The only thing we, you and I, can do to impact how we change is to choose a direction. We can decide in which way we want to evolve. And that way has to be kindness.
- Barriers to Learning from Contact with Reality (9b)
- Mektup #44: Returning to Office and Remote Work
I started going to the office again, even though it was not mandatory. And that reminded me of a few things about remote work and office work.
- DDIA: How to Partition a Database
Partitioning with primary or secondary keys, rebalancing partitions & trade-offs and how to solve them and the pros and cons of each approach.
- Joining SumUp
I'm starting as an Engineering Manager at SumUp! Today is my first day, and I'm excited to join this fantastic team.
- Mektup #43: Mektup is changing—Failures and Reflections
Today, I want to reflect on the past ~2 years of Mektup and share some news with you. It's a bit longer than usual but keep reading till the end.
- Behaviors run on Auto-pilot (38b)
- Tell the other side what's been left out (40e)
- Be part of the conversation and also the manager while receiving feedback (44l)
- Making decisions based on three groups (12a)
- Passionate people drive work better (53a1)
- Don't leave your best performers alone (53b)
- The More accidental complexity the less quality (49a)
- Fault Tolerance & Resiliency (48a)
- Mektup #42: How to Answer Hiring Manager Interview Questions
What are the hiring managers looking for in behavioral interviews? How to better answer their questions?
- Decision-Making Strategies (19)
- Goals and Existence
How do we know that we're on the right track? How can we ensure that we're progressing in the right direction?
- Energy Management at Work (62)
Avoid Snack Work
- Hidden Monoliths Affect the Software Design
Hidden monoliths are everywhere and affect the software system design. When the organization is aware of its software's environment, it can thrive. If not, it faces various challenges.
- What to delegate? (61)
How to choose what to delegate?
- Who to delegate the work? (61a)
Choosing who to delegate requires thinking
- The Teams that enable other teams (56i)
- Facilitating Teams in Organizations (56i1)
- Setting the environment for team interactions to work (56j)
- Inverse Conway Maneuver gets help from team interaction modes and team types to succeed (56k)
- Team Design Rules (56l)
- Monoliths are everywhere (56e)
- Team Interaction Modes (56f)
- Two teams shouldn't collaborate all the time (56g)
- Collaboration harms organizations (56g1)
- How I think about X-As-A-Service Teams (56h)
- Separate Concerns to Relax the cognitive load by using complicated subsystem teams (56d3)
- Platform Teams (56d4)
- How to Use Platform teams In The Organization (56d4a)
- DDIA: Encoding, Decoding, Schemas, and Data Evolution in Databases
The underlying approach to encoding and decoding decides how we approach data evolution and how we use schemas.
- DDIA: What is Replication in Distributed Systems
Replication is keeping the copies of data between multiple machines that are connected via a network.
- Mektup #41: One Thing At A Time: Multitasking for Software Engineers
- Questioning vs. Asking
The difference between questioning and asking.
- DDIA: Data Storage and Retrieval
At the fundamental of any database, it stores data when we give it and retrieves data when we ask for it. These fundamentals require different data structures.
- Mektup #40: Pros and Cons of Changing Tech Stacks
- The Real Difficulty of Engineering Leadership is Not What They Say
The biggest leadership development happens with solving internal challenges, not external challenges. If we want to create a healthy work environment and keep the team motivated, we have to develop effective leadership skills.
- Mektup #39: How I got a promotion offer from another company
- DDIA: Data Models and Query Languages
The relational, document-based, and graph-based data models are the fundamentals of understanding data-intensive applications along with query languages.
- Speaking, Writing, and High-Quality Ideas
Your success in life will be determined largely by your ability to speak, your ability to write, and the quality of your ideas. In that order. — Patrick Winston
- The CAP Theorem (48c)
- Elasticity in Software Systems (48d)
- Key-Value Partitioning (Key or Hash) (55d)
- Diseconomy of Scale (57)
- Scalability in Software Systems (58)
- Defining System Load (58a)
- Defining System Performance (58b)
- Approaches for Coping with Increased Load in Software Systems (58c)
- Pros and Cons of Vertical Scaling (Scaling Up) (58d)
- Functional Decomposition in Software Systems (59)
- Database Normalization (60)
- DDIA: Reliability, Scalability, and Maintainability in Distributed Applications
Understanding how they work is fundamental to developing data-intensive applications. This knowledge impacts our design choices, and the basics of these features demand an understanding of reliability, scalability, and maintainability.
- Mektup #38: Can you get a promotion by changing jobs?
- Mektup #37: Mentoring vs. Coaching vs. Teaching
- Form enabling teams to share expert knowledge in the organization (56d2)
- Mektup #36: How to Become A Great Mentor
- Organizations should reduce cognitive load on stream-aligned teams (56d1)
- Forming teams and defining topology depends on the context (56d)
- Team Anti-Patterns and their effects (56c)
- Define team APIs to design the team's outside communication (56b1)
- Mektup #35: Don't call people resources
- Mektup #34: Process Thinking
- On Drugs and Great People
When you use any drugs, have you thought about the background of it, about people dying and suffering?
- Mektup #33: One milestone and five articles
- Mektup #32: Product Shouldn't Be Left to Product Managers
- Learning Cone and Blame Spiral—The Case of Blame Absorbers
Some people learn the best when they take responsibility. When blame absorbers are not mindful or misguided, this behavior goes out of its way.
- Mektup #31: Non-Engineers Leading Engineering Teams
- Structuring Teams in Organizations (56)
- Conway's Law Still Holds True After Decades (56a)
- Limiting the communication lines to create better system design (56b)
- Database Partitioning (Sharding) (55)
- Vertical Partitioning (55a)
- Horizontal Partitioning (Range-Based Partitioning) (55b)
- Directory-Based Partitioning (55c)
- Mektup #30: The Exceptional Books, Articles, Videos, and Communities That Made Me a Better Engineering Leader
- Think Again Book Review, Summary, and Notes
Think Again is the book by The New York Times Bestselling Author Adam Grant. I've read it with a book club and written my summary, notes, and review.
- #28: How to Present Solutions as Software Engineers
- Mektup #29: Building correct relationships will help you climb the Ladder
- Mental Health for Professionals (28)
Work is not something of who you are; it's something you do
- Instead of giving advice directly, use an empathetic approach (44j)
- Overcoming Binary Bias and Polarization (44k)
- Have regular career and relationships check-ups (46c)
- Summarize when you want to clarify the other side's change request (53c)
- Listen with attention and ask questions with curiosity to encourage others to be open (53d)
- Relationship vs. Task Conflicts
Some people avoid conflicts thinking that they brake harmony and create problems. Some people create relationship conflicts because relationships are more important than work. And some people create task conflicts while thinking it will also improve their relationships.
- Persuading others requires accepting their arguments and building empathy (44g)
- Present humility and ask questions to persuade others (44h)
- Ask questions that nudge the other side to explore the roots of their stereotypes (44i)
- Unclear WHYs create more relationship conflicts (44f)
- #27: Problem-Solving Skills & A Strategy for Software Engineers
- Relationship vs. Task Conflict (44e)
- Productivity Scam and Perception of Time
I have been trying to optimize my life for a while. If I search about productivity and life organization, Google shows me almost four billion pages. I have read many of them while hoping they will help me.
- Mektup #28: Changing jobs to seek happiness won't bring you what you want
- How do I behave when I receive feedback? (40d)
- Best Practices and Consistent Improvement (39a)
- Confident Humility is Required to Build Trust (3b6)
- Comparing Psychological Safety with Performance Culture (54c)
- Scientific Thinking and Fact-Checking for A Better Life (30)
- Trailer: Season #3
- Impact of knowledge and beliefs on learning (27b1)
- Impact of Imposter Syndrome (46b)
- Mektup #27: Unstuck yourself from the ideas that go nowhere
- A Systematic Approach to Give Feedback to Blame Absorbers
At first glance, blame absorbers look good because it shows that the person owns their work and has a sense of responsibility. However, we often don’t notice that they harm the team more than bring an advantage.
- Coaching for Responsibility (31c)
Don't fire people when they fail. Encourage them to fail fast and ensure responsibilities are balanced.
- Mektup #26: How to Create a Definition of Done in Your Team
- Why Should Leaders Have Good Storytelling Skills in Reorganizations or Restructurings?
Reorganizations and restructurings demand a clear understanding of the reasons and require good storytelling skills to convince people.
- Yet I Cried; One More Time
I cried over the last week. I cried with different feelings. The wars create many different feelings in us. It creates conflicts within us. I cried a lot over the last week. This time, I know why I cried.
- Confident Humility (7)
- Mektup #25: You Need A Definition of Done in Your Team
- Do Not Change Jobs
If you ask me my advice would be to mid-level software engineers these days, it would be to stay where you are if you don’t have a stressful problem and if you’re learning.
- Mektup #24: One of the best superpowers you can get as an engineering leader
- Being Morally Good in The War of Life
Do we know how to live? Are we expecting to have a great life because we're morally good? Do we know how to fight? Learning how to fight separates the good people from the winning people.
- Mektup #23: The closest you can get to a leading role: hosting a workshop
- Why Listening with Empathy is an Important Skill for Every Leader?
Empathetic leadership improves leaders' emotional intelligence, which is a fundamental skill for leadership development and better mental health.
- Mektup #22: What should you expect from your manager?
- Is Software Engineering an Art?
Why is software engineering hard? Do we confuse the profession? Is software engineering really engineering? Or is it art? How does innovation play a role?
- Mektup #21: Which skills should you learn in 2022? and How?
- Make Time Book Review, Summary, and Notes
Make Time is written by the bestselling authors Jake Knapp and John Zeratsky, the authors of Sprint: Solve Big Problems and Test New Ideas in Just Five Days.
- Recognize but don't promote all of your employees (24e)
- Why people who are growing too fast can have low performance (5a)
- Mektup #20: The Rule of Three to Avoid Bias
- Have The First Win to Build Team Spirit
Solely encouraging people to create team spirit never works, especially for new teams. The manager has to give the team a goal and celebrate achievements.
- I'm Sorry. The Project is Delayed and It's All My Fault
In one of my previous delayed projects, I told my manager, 'It's all my fault. I made many mistakes, and I take full responsibility for them.' I blamed myself, which contributed to a burnout that I had a year later.
- Mektup #19: How to Prepare for Your Annual Review
- Clarify the expected outcome and the action it requires in written form to get it out of your mind (16b)
- Have a single highlight of the day (16c)
- Difference between an amateur and a professional (41a)
- Not everyone has to have a passion for work (53a)
- Why do we bother to write? (1)
- Individual Contributor or Manager (10)
- Growing in IC track in Engineering (10a)
- Doing side projects helps you test your ideas (10b)
- How to move to the next level (11)
- Engineer Autonomy (12)
- Be Kind at Work (13)
- Experiences are like compound interest on money (14)
- What should you do when your manager delegates a task to you (15)
- Managing Time as a Manager (16)
- The Meetings of a manager (16a)
- Public Speaking and Improving Skills (17)
- Choosing a talk topic is art (17a)
- Increasing Public Speaking Skills (17b)
- Do whatever works for you in your public speaking (17c)
- Focus on only one improvement in every rehearsal for public speaking (17d)
- Transform your nervousness into mindfulness in public speaking (17e)
- Make key takeaways clear on your talk (17f)
- Prepare and ask questions to create engagement (17g)
- How to Understand The Public Talk Feedback You Get (17i)
- Inform viewers about questions (18)
- Knowns and Unknowns (19a)
- Choosing the old technology (19a1)
- The process of choosing a new technology (19a2)
- Consent-Based Decision Making (19b)
- How to move faster in organizations (19c)
- Why can't this be done sooner? (19d)
- How to make faster decisions by validating objections? (19e)
- Writing by Hand (1b)
- How to Take Literature Notes (1c)
- Adding a New Note To Slip-Box (1d)
- Contradictions in ideas within a thought line (1e)
- Elaboration on an idea (1f)
- Winners and losers share the same goals (1g)
- Continuous Improvement Means Changing The System (1h)
- Embrace & Love Boredom (1i)
- How to Improve Writing (2)
- Influencing Others (20)
- Thinking out loud (20a)
- Sharing knowledge is not a noise (20b)
- Efficient Code Review Process (The changes I wanted to do in one of my teams) (21)
- Why should we do a code review? (21a)
- Four stages of the best code review process (21b)
- Cross-Cultural Communication (22)
- Don't assume while working with people from various cultures (22a)
- The First Question of Feedback Discussions (23)
How to give feedback to others? Where do we start?
- Give positive feedback at the moment of action (23a)
Positive reinforcement works with timely feedback
- Authority has no impact when action on feedback (23b)
When giving feedback managers shouldn't expect their authority's effect on action
- Be careful with obnoxious aggression (23b1)
What's obnoxious aggression and how does it impact?
- What is Manipulative Insincerity? (23c1)
Telling people what they want to hear
- Don't give feedback for the sake of giving feedback (23d)
We can take a step back and look at how each of us contributes to the work
- How to show a blame absorber other factors' impact on the problem (23e)
Working with people who absorbs all the blame
- Just say what you are going to say while giving a damn (23f)
How I improved my feedback skills by just thinking in the radical candor framework
- Strong teams are motivated by goals (24)
Concrete team goals drive people to success
- Creating goals when you join a new team (24a)
Separate Evaluation Feedback from Coaching & Appreciation Feedback In Performance Reviews
- Specify goals instead of methods or processes (24b)
People should focus on achieving goals, not following rules for the sake of following
- Begin with The End in Mind (24b1)
Set clear and measurable goals for both short and long term
- People need clarity, not motivation (24c)
- Strong product teams solve customer problems, instead of output (24d)
Separate Evaluation Feedback from Coaching & Appreciation Feedback In Performance Reviews
- Consistent writing brings success (25)
Separate Evaluation Feedback from Coaching & Appreciation Feedback In Performance Reviews
- You get what you repeat (25a)
- Making the habit obvious helps not to wait for motivation (25b)
- Don't slip twice (25c)
- Commitment gives you freedom (25d)
Saying no to good things enables us to say yes to great things
- The Cost of Software Deployment and Continuous Delivery (26)
Delayed deployments increase the repair cost
- The Bigger Batch-Size Deployment's Impact on People (26a)
- Bigger Batch Size Deployments lower product feedback cycle (26b)
- Lack of ownership (26c)
- Software Delivery Batch Size vs. Transaction Cost (26d)
- Developing Habits (27)
Don't act, do it.
- Increasing awareness of the actions and behaviors (27a)
We need to increase the consciousness of our actions by naming them.
- How to Learn New Things via Habit Stacking (27b)
Habit stacking is forming new habits by tieing a new habit into an existing one.
- Why Environment Matters More Than You Think When Building Habits (27c)
Changing environment is the backbone of building new habits.
- Self-control and motivation are short-term strategies of habits (27d)
- Learn when you reflect: 20/40 Rule (27e)
- Try to keep your learning in 'Just Manageable Difficulty' (27f)
- Build your skills gradually to climb Mount Everest (27f1)
- Uncertainty is needed to stay open-minded (29)
The more you read and learn, the less you know. The more uncertain you are, the more you are open to learning and changing.
- How to get rid of distractions in your head while you write (2b)
- How to create a story? (2f)
- Being a Team Manager and Manager's Job (3)
- Change is Inevitable (30a)
- Immunity to suffering requires healthy doses of pain (30b1)
- The Case of Happiness (30b3)
- Choose good values and good metrics in life (30c)
- Our lives are full of choices (30d)
- Choose how you want to play with your existing hand (30e)
- Avoiding Accountability Dysfunction in The Team (31b)
- Effectively Learn from mistakes (31d)
- Communicating Decisions in Organizations (32)
- Continually and consistently repeat the message (32a)
- Invest in growing your employees (33a)
- Clarity in Organizations (34)
- Transparency and respect build trust (34a)
- Protective Leadership (35)
- Open Feedback Culture (36)
- Setting Organizational Goals and Processes (37)
- Including side work into technical initiatives (37a)
- Changing Habits Happen in Three Different Ways (38)
- Focus on who you want to become, not what you want to achieve (38a)
- Increasing Quality of Systems (39)
- Team Decision Deployment Strategies (3a)
- Joining A Team As A New Manager (3b)
- Building Trust as a New Engineering Manager (3b1)
- Building Trust as a Leader (3b2)
- Be Honest and Open to Building Trust (3b3)
- Make Your Intention Clear (3b4)
- Giving Ownership to People (3c)
- Autonomy and Ownership Requires Technical Capability (3c1)
- Creating an Agenda for One-one-Ones with Your Manager (3c2)
- Giving ownership to people by delegation (3c3)
- Working with and leading blame absorbers (3c4)
- Teams need emancipation, not empowerment (3d)
- Setting Clear Expectations About Communication and Collaboration (3e)
- Monitoring Work of Direct Reports (4)
- Understanding the Feedback You Receive (40)
- Switchtrack conversations (40a)
- Creating accidental adversaries (40b)
- Learning How to Receive Feedback (40c)
- Characteristics of Creative Work (41)
- How to discover creativity? (41b)
- Systems and Design Thinking (42b)
- Actors/actions model (42c)
- Component discovery with Event Storming (42d)
- The Role and Responsibility of Software Architect (43)
- Explicit disagreement is better than implicit misunderstanding (44a)
- We attribute failure differently (44b)
- Confrontation brings honesty (44c)
- Without conflict, there can be no trust (44d)
- Software Architecture Patterns and Models (45)
- Architecture Sinkhole Anti-Pattern (45a)
- Intentions, Behaviors, and Their Impact (46a)
- Doubts are rarely formed on experience (46d)
- Measuring self-worth comes from negative experiences (46d1)
- Choose good problems to deal with (46e)
- Software Architecture Styles (47)
- Layered Software Architecture (47a)
- Layers of Isolation (47a1)
- Pipeline Architecture Style (47b)
- Putting servers close to clients (48b)
- Accidental Complexity (49)
- Monitoring & Inspection to Learn (4b)
- Managing Promotions (5)
- Service Level Agreements/Indicators/Objectives - Percentiles (50)
- Consistency Models in Distributed Systems Index (51)
- Strong Consistency (51b)
- Eventual Consistency (51d)
- Personal Values (52)
- Accepting one thing requires saying no to other things (52a)
- Accepting Death Destroys Entitlement (52b)
- Guiding Direct Reports as Manager (53)
- Create company values from stories in your life (54a)
- Culture Reflects Leadership (54b)
- Different People have different growth trajectories (5b)
- Growing in the Career (8)
- Making the decision between management or IC Leadership (8a)
- Advice to Juniors (8b)
- Learn The Principles (8c)
- Ask Questions (8d)
- Teach Others (8e)
- Seniority is not about being smarter (8f)
- It's not about the number of languages you know (8g)
- Inheriting other people's code (8h)
- Don't stop asking questions (8i)
- Growing does not always mean being an expert (9)
- Why you are not a senior (9a)
- Choosing a topic for content and public speaking (17h)
- No happiness without suffering (1j)
- How to give positive feedback? (23c)
When giving praise, be as specific as constructive feedback. Be mindful when and how to give it.
- How to have better performance review meetings as a leader (23g)
Separate Evaluation Feedback from Coaching & Appreciation Feedback In Performance Reviews
- Take breaks to write better (2a)
- Write a letter to a friend (2c)
- Leave the Reader with Only One Idea (2d)
- Elements of a Story (2e)
- Why do we suffer in life? (30b)
- Emotions are biological (30b2)
- Accountability and Learning Culture in Organizations (31)
- Create Accountability Cadence (31a)
- Elevating Others Around You (33)
Improving Competency with Mechanisms
- Asking Questions to Build Trust with A Direct Report (3b5)
- Our minds are changeable; we can get rid of our inner critic (41b1)
- Do something principle (41c)
- What to Consider While Designing a Software System (42)
Conceptual Integrity
- Top Level Partitioning (42a)
- Use Second-Order Thinking (42e)
- Understanding Differences in Opinions and Perspectives (44)
- Coaching Yourself (46)
- System Design Index (48)
- On Being Curious (4a)
- Database Race Conditions (51a)
- Sequential Consistency (51c)
- Creating Open Culture at Work (54)
- Being a boss who cares personally (6)
- #26: Machine Learning & Data Science with Jesper Dramsch
- Worth Doing Wrong Book Review, Summary, and Notes
Arnie Malham talks about what they did specifically to change the culture in cj Advertising. They changed the culture with many small steps, not with one big jump. Making it wrong with small steps to make it right is the message of the book.
- Mektup #18: What did you learn during the last month?
- Simple Ideas Prevent Complicated Problems (9c)
- Csikszentmihalyi, Newport, and Pressfield on Creativity, Time and Deep Walks in Remote Work
Choose one topic and grab a pen and paper (not a phone), and take a walk, preferably in nature, a park, or a calm area where you won't have distractions.
- #25: Live Pair Programming, Open Source, and Building Communities with Nick Taylor
- Mektup #17: Pair programming is not only for you.
- Supplying Books to My Father
Recently, I became the book supplier for my father. Choosing books for someone else is a powerful position, and I take it seriously and feel responsible.
- #24: Understanding Distributed Systems with Roberto Vitillo
- Mektup #16: Why do you hide your goals and ambitions?
- #23: Accessibility and Inclusive Design with Eric Bailey
- The Subtle Art of Not Giving A Fuck by Mark Manson Book Notes
'Our desire is no longer material; it's existential.' The book is about understanding life a little bit better by accepting the pain and giving up trying.
- Mektup #15: You don't need a title to be a leader!
- Studying and Learning Leadership
Leadership is not something you're born with it; it is something you learn. When you study leadership, you learn the fundamentals.
- #22: Effective 1:1 Meetings for Software Engineers
- Don't Assume Consensus In The Absence of Objection
Consensus decision-making means everyone explicitly agreeing to the proposed idea. The leader needs explicit agreement from everyone and shouldn't assume consensus in the absence of objection.
- Mektup #14: How often do you go out of your comfort zone?
- Navigating The Writing Challenge Every Day
Every day, I either write one to three pages or rewrite what I wrote the day before. It's a challenge. I fail sometimes.
- The Decision-Making Pendulum
The inflexibility in decision-making is at the root of various problems. Many leaders either use a lot of authority or seek consensus. What they need is a pendulum.
- Bias For Action
Having a bias to action is more helpful than discussing and researching everything prior. Quantity beats quality in learning. Action beats perfection.
- Mektup #13: How do you contribute to the problem?
- #21: Intent-Based Leadership with L. David Marquet
- Mektup #12: Stairway to the Promotion
- How to Approach Software Architecture Design
How an architect thinks and approaches designing and architecting software systems? The architect's job is eventually a combination of tech lead, software engineer, R&D engineer, and strategist. But how do these responsibilities come together?
- #20: Software Architecture Design | Systems and Architectural Thinking Part 2
- Turn The Ship Around Book Review, Summary and Notes
A business novel from Navy Captain David Marquet explains intent-based leadership and identifies how the leader-follower approach is ineffective.
- The Good, The Bad, and The Ugly of Career Ladders
Software engineering career ladders and frameworks are helpful tools for software engineers to grow. Here are the advantages and disadvantages of career frameworks and ladders.
- Put Remote Work in Your Inclusion Efforts, not only in Diversity
Remote work is more inclusive than on-site work. It provides opportunities to people with disabilities, disorders, and deficiencies.
- Mektup #11: Do you know what's coming next?
- You are not special
Most things in life are either average or suck. The media blurs this reality. It also creates a fake one by saying that everyone can achieve everything.
- Mektup #10: The Career Frameworks
- #19: The Software Architect Role | Systems and Architectural Thinking Part 1
- Why Can't This Be Done Sooner
The question, 'Why can't this be done sooner?' makes you deeply understand the approach you're taking, question it, find the gaps in your knowledge, and analyze the risks better so that you make an informative decision while moving faster.
- A Life Without Problems - The Happiness
In a blink of an eye, we're happy. We may be achieved a goal or finalize a project. This happiness usually lasts for one blink, maybe two.
- Mektup #9: Personal Ego vs. Team Ego
- What Hades (The Game) Had Taught Me
Hades taught me to be beaten up by trying to do something every day but never give up. In every attempt, I am stronger than before.
- Explicit Disagreement is Better Than Implicit Misunderstanding
Expressing disagreements is not always pleasant, but they might be better than misunderstandings. In some cultures, it causes miscommunication; in some of them doesn't.
- Tips for Managing Partially Distributed Teams
Either managing or being part of a partially distributed team is difficult. It requires a mixture of sync and async processes to prevent low performance, conflicts, and burnout.
- Mektup #8: Architectural Thinking
- #18: Managing Organizational Changes with Jim Allen
- Why are Hybrid Meetings Terrible? Remote vs. On-site Meetings
Have your team meetings as either remote meetings or on-site meetings. Don't have hybrid meetings. If you do, people in the meetings will have a bad experience.
- Mektup #7: The Role of A Software Architect
- Can You Fire Your Colleague?
I have faced this question recently, and I went silent. I knew that laying off people or firing someone specific are unpleasant moments of management.
- #17: Banish Your Inner Critic with Denise Jacobs
- Building Microservices: Splitting the Monolith
Don't split the monolith for the sake of having microservices. Use incremental approach.
- Mektup #6: Why should you deploy your code in smaller chunks and release software often?
- No, You Don't Need to Learn Another Programming Language Every Three Months.
There is no easiest, hardest, useful, or best programming language; they are all similar. Learn data structures and algorithms to master in all languages.
- #16: Being an Indie Hacker and Part-time Creator with Benedicte Raae
- How to Handle and Overcome Objections to Your Proposal
In organizations, we draft proposals to make decisions. Handling and overcoming objections to a proposal helps to make the decision process sustainable.
- Mektup #5: How to choose what you should focus on next? The case of prioritization and decisions...
- Deciding on What You Should Focus on Next
Through a software engineer career, deciding factors change, and we forget how to decide and focus on one thing. What you need to do is sit and prioritize.
- Prioritization Skills for Senior and Staff Software Engineers
When you grow into more senior roles, your responsibilities evolve. Prioritization changes for software engineers. Communication and analysis skills become more important.
- #15: Prioritization for Senior and Staff Software Engineers with Dennis Benkert
- Mektup #4: Deep Work, 1:1s, Estimations, Conflicts, Documentation, Protective Leadership
- How to Solve and Prevent Conflicts
Miscommunication and lack of empathy lay beneath the conflicts. The expectation of a magic wand resolving everything can put high pressure on managers' shoulders. However, there are initial steps managers can take.
- Communicating Decisions In The Organizations
The communication of the decisions is sometimes more important than the decision itself. The leaders often make horrible announcements of significant decisions. How can they do it better?
- How to organize your engineering team's documents?
Every engineering team has some sort of documentation of their team's work. Most often, these documents get disorganized reasonably quickly. People have a hard time finding their way around. There are some tricks to solve the problem.
- Why I Stopped Live Streams
I live streamed for fourteen weeks, every Tuesday at 19:00 CET. I had thirteen amazing guests. We talked about many different things in the software industry, ranging from DevOps to marketing. I learned a lot from my guests and enjoyed all the talks.
- Why Is Writing Important?
Many software engineers are poor at writing, or they avoid it because they think it takes a lot of time. Yes, it takes time. But it is crucial and cannot be ignored at work.
- #14: Protective Leadership & Finding Your Leadership Style - Suzan Bond
- Timely Estimations are Underrated!
I have seen the good, the bad, and the ugly parts of different estimation techniques. I think timely estimations are better when they are done right.
- Effective 1:1 Meetings—1-on-1 Meeting Template
Most of the one-on-one templates I found online did not suit me and were not effective. I picked the best parts adjusted them according to the software engineer's perspective.
- Mektup #3: Effective 1:1s, DevOps, Atomic Habits, Staff Engineer & more
- Effective 1:1 Meetings—Own Your 1-on-1
When I changed my perspective and worked on improving my one-one-one meetings, the results were terrific. Now, I have better communication with my manager, and I feel that I'm learning and growing way faster than usual.
- #13: DevOps and Site Reliability Engineering as a Career - Rene Hernandez
- Building Microservices: Integration of Microservices - Part 2
The most important aspect of technology correlated with microservices is integration. When we get it right, microservices are autonomous and independent. If we get it wrong, the risk of catastrophe increases.
- Building Microservices: Integration of Microservices - Part 1
The most important aspect of technology correlated with microservices is integration. When we get it right, microservices are autonomous and independent. If we get it wrong, the risk of catastrophe increases.
- #11: Learning and Growing in Front-end Development - Ali Spittel
- #12: The Life of a Generalist Software Engineer - Ricardo Smania
- Mektup #2
- #10: Building Healthy On-call Culture - Serhat Can
- How to Build Trust in a Team as a New Manager
Building trust in teams is complex. Trust in the workplace is crucial to becoming a successful software engineering manager.
- #9: Engineering Career Path - Tobias Bales
- #8: Cross-Cultural Communication in Engineering Teams with Felipe Furlan da Silva
- What is Blue-Green Deployment
The Blue-Green Deployment is an application deployment technique used in continuous delivery. The new service is deployed and put into production gradually.
- Mektup #1
- #7: Mobile Apps at Scale - Fırat Karataş
- Building Microservices: How to Model Microservices
The goal of modeling microservices is to have loose coupling and high cohesion. Don't directly go with microservices. Start monolithic and evolve to microservice.
- Building Microservices: The Evolutionary Architect
Comparing software architects with actual architects is inaccurate. Physical-world constrains architect, and software evolves with user requirements.
- #6: Software Development in Startups with Fatih Acet
- Diversity in Tech Is A First World Problem
Thinking diversity only in our immediate environment is a shortcoming. Instead of blinding ourselves, we need to broaden our horizon and think of other sides of the world to have a bigger impact.
- #4: How to Be A Working Student with Oksana Shcherban
- #5: Startup Marketing with Peri
- Building Microservices: Microservices and Benefits
Microservices emerged from continuous delivery, domain-driven design, automation, and small and independent teams. They reflect the real world in the software. But what are microservices?
- #3: Diversity, Gender Discrimination, Women in Tech with Yasemin Alpay
- How to Stop Endless Discussions
When we find ourselves in endless debates where everyone defends their idea, we don't know how to handle the situation. We eventually find a way out, but what we need is an excellent system.
- #2: How Engineering Teams Work with Product Teams with Göksel Köksal
- How to reset the first commit in Git
We cannot use interactive rebasing and resetting. Both of them have security mechanisms to prevent this action. Instead, we have to use other approaches.
- Top 3 Tips for Planners
If you are planning your days and still failing to stick to them, these tips can help you. Instead of feeling bad, you can start feeling great.
- #1: Tech Interviews with Sabrican Ozan
- Separation of Concerns
We often don’t even realize that we’re mixing things at work. There are a couple of reasons and strategies we can follow.
- Growth with Systematic Bliss
Growth with big goals is an illusion. Growth without goals is too. We need the middle ground, and this is how I approach it.
- High Productivity and Clear Communication in Different Cultures
Review about the book The Culture Map by Erin Meyer
- 14 Lessons I learned in 10 Years
Technical skills are easy, yet soft ones are harder. I learned a lot of lessons from my failures, experiences, and successes. Here is my shortlist.
- Managing Multiple AWS Environments with Terraform
Multiple environments like staging and production are standard and when we use it with AWS, we face the problem of managing access to them.
- Testability in iOS
Most of the developers have a hard time understanding the testing. Tests are often underrated and despised. What are the benefits of tests?
- Concurrency in iOS
We face handling more than one operation at the same time. We want to shorten the waiting time even though it is not always necessary with the concurrency.
- View Lifecycle in iOS
Truly understanding when the view is created, loaded, appeared, or destroyed helps us to understand our approach deeply while developing an iOS App.
- iOS Application Lifecycle
Every iOS developer needs to understand the possible states and lifecycle of an iOS application. Knowing when the state enables us to work behind the scenes.
- Simple Linear Regression in Machine Learning
Linear Regression is a basic statistical method that applies a linear function to data and predicts a scalar value. But why do we use it?
- Importance of Feedback
Feedback is defined as a reaction after a behavior or statement. But what does it really mean for us?
- Firebase Predictions
Google announced Firebase Predictions in Firebase Dev Summit in Amsterdam this year.
- iOS Developer Productivity Kit
We use some tools and also some do customizations on them to increase our productivity. Every tech stack has different needs, thus, a different set of tools.
- Machine Learning Introduction
The fundamentals of machine learning require some knowledge of linear algebra and calculus. This barrier frightens people and keeps them away from machine learning with curiosity.
- Generics in Swift
As one of the most powerful features in Swift, Generics can be tricky. A lot of people have trouble understanding and using them, especially application developers.
- Vapor 2 - What to do after 'Hello World' Example
When Apple announced Server APIs and working group, it made me think to switch to Swift for server-side development.
- Migration from Vapor 1 to Vapor 2
Migration Guide from Vapor 1 to Vapor 2
- Using SwiftLint and Danger for Swift Best Practices
Swift is a very flexible language, therefore, easy to misuse. Applying best practices in Swift lint is important.
- Unit Tests in Server-Side Swift API
Why do we need to reshape our module to make it testable?
- New Horizons with Server-Side Swift
After hearing a lot about the great performance of Swift in the backend, I decided to give it a try. And here comes my first experiences step by step.
- Using Firebase Cloud Messaging for Remote Notifications in iOS
Firebase gives you the tools and infrastructure you need to build better apps and grow successful businesses. It provides several features divided into three groups develop, grow and earn.
- Categories and Using Objects with Categories in Objective-C
- To Model and Animate a 3D Ball-and-Stick Man in OpenGL
- FTP File Operations on Apache Commons Net Library in Java
- Zipping and Unzipping a Directory with All Contents in Java
- final in Java
- System Class in Java
- Type Casting For Inheritance In Java
- URLClassLoader in Java
- Method Paramters in Java
- && vs & in Java
- Design Patterns
- Calculating shortest distance between point and line in Java