<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Gabe Perez</title>
    <description>The latest articles on DEV Community by Gabe Perez (@gabriel_perez_337aabb5cfd).</description>
    <link>https://dev.to/gabriel_perez_337aabb5cfd</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2793693%2F77bd55f3-1ceb-4868-be13-98a6931e072c.jpg</url>
      <title>DEV Community: Gabe Perez</title>
      <link>https://dev.to/gabriel_perez_337aabb5cfd</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/gabriel_perez_337aabb5cfd"/>
    <language>en</language>
    <item>
      <title>Management or IC: What's Your Next Move?</title>
      <dc:creator>Gabe Perez</dc:creator>
      <pubDate>Sun, 09 Feb 2025 04:32:39 +0000</pubDate>
      <link>https://dev.to/gabriel_perez_337aabb5cfd/management-or-ic-whats-your-next-move-104e</link>
      <guid>https://dev.to/gabriel_perez_337aabb5cfd/management-or-ic-whats-your-next-move-104e</guid>
      <description>&lt;h2&gt;
  
  
  Debunking Myths and Exploring Realities to Help you Make an Informed Career Choice
&lt;/h2&gt;

&lt;p&gt;Many engineers reach a point in their careers where they wonder, &lt;em&gt;Is management my next step?&lt;/em&gt; It feels like a natural progression — a sign that you’re growing. But management is often misunderstood, and jumping in without fully grasping its challenges can lead to frustration. This post isn’t about discouraging you from pursuing management; rather, it’s about helping you make an informed decision based on my experiences and the valuable lessons from &lt;em&gt;The Manager’s Path&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;If you’re new to this series, welcome! This is part of a broader exploration of the challenges and growth opportunities in engineering careers. You can find the first post &lt;a href="https://dev.to/gabriel_perez_337aabb5cfd/growing-as-an-engineer-lessons-learned-the-hard-way-5enc"&gt;here&lt;/a&gt;, which sets the stage for understanding the pivotal points of moving from individual contributor to leadership. However, each post can stand on its own, so feel free to jump in!&lt;/p&gt;

&lt;p&gt;To enrich this discussion, I conducted a survey among peers — engineers who have been both individual contributors (ICs) and managers — to gather their insights and experiences. The survey included questions about their expectations before becoming managers, surprises they encountered, myths about management, and advice they wish they had received. These real-world perspectives add depth to the lessons I’ve learned from my own journey.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Debunking Common Myths About Management&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Based on survey responses, &lt;strong&gt;78% of participants&lt;/strong&gt; initially thought becoming a manager was a natural extension of engineering, involving added leadership and mentoring. However, many found that management required a completely different set of skills, including emotional intelligence and people management, which they hadn’t anticipated.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Myth 1: Management Is the Only Way to Advance Your Career&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Early in my career, I thought management was the only way to grow — the “next level” after senior engineer. Many engineers feel the same, viewing the move to management as a promotion and the sole path to greater responsibility and influence. But that’s a narrow perspective.&lt;/p&gt;

&lt;p&gt;One survey respondent noted, “As you grow in your career as an engineer, you normally start to take on more leadership roles. Becoming a manager for me was a natural transition after that.” However, they realized that technical leadership can be just as fulfilling and impactful. Paths like becoming a staff or principal engineer offer growth in technical expertise, decision-making, and influence without needing to switch tracks entirely.&lt;/p&gt;

&lt;p&gt;Whether you’re passionate about architectural decisions, mentorship, or driving big technical initiatives, you can have a huge impact while remaining on the IC path.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Myth 2: Managers Have Full Control Over All Decisions&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Many people assume that becoming a manager means you’ll have more control and authority. But the reality, as shared by &lt;strong&gt;82% of survey respondents&lt;/strong&gt;, is that managers spend much of their time balancing between the needs of their team and the expectations of upper management.&lt;/p&gt;

&lt;p&gt;One respondent said, “I thought I’d be in control, setting direction and solving big problems myself. Instead, I found that my role was about advocating for my team and aligning with others, which often meant influencing without direct authority.” Another mentioned, “Managers are responsible for stuff — people, projects, products, happiness — but aren’t entitled to power over something or someone.”&lt;/p&gt;

&lt;p&gt;As a manager, you don’t have unilateral decision-making power. Your influence comes more from your ability to inspire, align, and support than from your title alone.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Myth 3: Managers Don’t Need to Be Technical&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Another common myth is that managers don’t need technical skills. Many think that as a manager, your role shifts purely to people management, and you can leave all the tech behind. The reality is that while you may not be writing code every day, having a solid understanding of technology is crucial — especially in engineering management.&lt;/p&gt;

&lt;p&gt;At companies like Intuit, it’s generally required to reach the Staff Engineer level before transitioning to people management, precisely because that technical expertise is so important. This ensures that managers have the depth of knowledge needed to support their teams effectively.&lt;/p&gt;

&lt;p&gt;One survey participant shared, “Being a good manager means staying connected to the work, even if you’re not in the trenches day-to-day. You need to guide technical conversations, evaluate trade-offs, and support your team’s growth.”&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Myth 4: Becoming a Manager Is a Promotion&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Many see the transition to management as a promotion — a natural upward move in the career ladder. But management isn’t a promotion in the traditional sense; it’s a change in role, focus, and skill set.&lt;/p&gt;

&lt;p&gt;A respondent put it well: “Becoming an engineering manager doesn’t entitle you with power and authority. It’s more like you’re responsible for people, projects, products, happiness, not entitled to power over something or someone.”&lt;/p&gt;

&lt;p&gt;If you’re considering management as your next move, understand that you’re not just “going up” — you’re moving sideways into a role that requires a new mindset.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;The Realities of Management&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;To give you an idea of the challenges faced by new managers, &lt;strong&gt;85% of survey respondents&lt;/strong&gt; highlighted the emotional and interpersonal challenges as some of the most demanding aspects of the role. This includes navigating team dynamics, supporting members through personal struggles, and managing your own emotional energy.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Reality 1: Your Success Is Measured by Your Team’s Success&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;When you’re an IC, success is straightforward — it’s about your code quality, problem-solving skills, and technical impact. As a manager, your success is tied directly to your team. Are they growing? Are they delivering? Are they engaged and motivated?&lt;/p&gt;

&lt;p&gt;On the positive side, many managers find this shift incredibly rewarding. One colleague shared, “Watching my team members grow and succeed brings me a sense of accomplishment that I never experienced as an individual contributor.”&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Reality 2: Emotional Labor Is a Big Part of the Job&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;The emotional aspect of management caught many by surprise. You’re not just managing tasks; you’re managing people’s emotions, ambitions, and conflicts.&lt;/p&gt;

&lt;p&gt;One respondent shared, “I wasn’t prepared for the emotional burden of managing so many people. If you’re late on a project, it’s disappointing, but if you rush a performance review and someone misses a promotion they deserved, it’s devastating.” Another mentioned, “Letting go of a contractor was super hard on me emotionally. I had to think about it over and over and make it happen.”&lt;/p&gt;

&lt;p&gt;However, many managers also find this aspect deeply fulfilling. Another respondent said, “Being there for my team during tough times and helping them overcome obstacles has been one of the most gratifying parts of my role.”&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Reality 3: Influence Without Authority&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Management requires a lot of influencing without direct authority. You may think that being a manager gives you control, but it’s more about guiding and influencing across teams and departments.&lt;/p&gt;

&lt;p&gt;One manager shared a success story: “By building strong relationships with other teams, I was able to advocate for my team’s ideas and see them implemented across the organization. It wasn’t about authority; it was about collaboration and mutual respect.”&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Reality 4: Trade-offs and Sacrifices&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;As a manager, you’ll find yourself making trade-offs — not just for your team, but for yourself. There were times when I felt that switching to management would be easier than keeping up with the fast pace of technology. But I realized that while technology evolves, it doesn’t have emotions or hidden challenges. People do.&lt;/p&gt;

&lt;p&gt;Some survey participants missed the hands-on technical work. One said, “I was always jealous of the engineers on the team, building and creating new things. I spent time at home trying to catch up, only to feel frustrated for not having enough time.” Another mentioned, “I often felt sidelined when the team was digging through an issue or working late for a deadline, not able to ‘be in the trenches’ as much as I’d like.”&lt;/p&gt;

&lt;p&gt;But for others, the trade-offs are worth it. One manager expressed, “While I miss coding, I love the broader impact I can have. Facilitating my team’s success and watching them tackle challenges is incredibly rewarding.”&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Learning from Those Who’ve Been There&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;To provide a broader perspective, here’s a snapshot of the survey insights:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;What Surprised New Managers:&lt;/strong&gt; The emotional and interpersonal challenges topped the list, with &lt;strong&gt;85%&lt;/strong&gt; highlighting this aspect. Balancing team needs with upper management expectations was noted by &lt;strong&gt;82%&lt;/strong&gt; of respondents.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Biggest Myths About Management:&lt;/strong&gt; Common misconceptions included the belief that managers have full control over decisions and that higher management means less stress.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Advice They Wish They Had Received:&lt;/strong&gt; Many emphasized understanding one’s passion for technical work versus people management. One respondent advised, “Don’t go for something because it ‘looks interesting’ or because you feel it might ‘pay better.’ At the end of the day, you have to do that work day in, day out.”
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reasons for Returning to the IC Track:&lt;/strong&gt; Some managers returned to technical roles due to a desire for deeper technical engagement, feeling overwhelmed by people management responsibilities, or seeking a better work-life balance.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;By sharing these insights, I hope to provide a clearer picture of the diverse experiences and perspectives that can help you make an informed decision.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Conclusion: Empowering Your Career Choice&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;This post isn’t about steering you away from management. It’s about equipping you with the knowledge to make the best decision for your career and personal fulfillment. Management can be incredibly rewarding, but it’s not the only way to grow.&lt;/p&gt;

&lt;p&gt;Companies like Intuit recognize the importance of allowing employees to explore different career paths. They offer internal mobility programs that enable you to switch roles — and even switch back — if that’s what you need to evolve your career. This flexibility allows you to find the role where you thrive the most.&lt;/p&gt;

&lt;p&gt;One respondent shared, “I always encourage ICs to try the management role (for those that are interested). If you don’t like it, you can always go back to being an IC.” Remember, your career path is not linear, and it’s okay to explore different roles to find where you excel.&lt;/p&gt;

&lt;p&gt;For those who are curious and have the support to try new roles, exploring management can be worthwhile. And if it doesn’t feel like the right fit, the IC track offers its own rewarding challenges and opportunities for impact.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Call to Action&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;I’d love to hear about your own experiences. Have you thought about moving into management? What excites you — or worries you — about it? Let’s keep the conversation going. Drop your thoughts in the comments, and feel free to reach out if you have questions!&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;Cheat Sheet for Further Reading&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;If you want to explore these ideas in greater depth, I recommend reading &lt;a href="https://www.oreilly.com/library/view/the-managers-path/9781491973882" rel="noopener noreferrer"&gt;The Manager’s Path&lt;/a&gt; by Camille Fournier, particularly Chapter 3, which covers the differences between technical leadership and management.&lt;/p&gt;

</description>
      <category>career</category>
      <category>leadership</category>
      <category>softwareengineering</category>
    </item>
    <item>
      <title>Growing as an Engineer: Lessons Learned (the Hard Way)</title>
      <dc:creator>Gabe Perez</dc:creator>
      <pubDate>Sun, 09 Feb 2025 04:17:26 +0000</pubDate>
      <link>https://dev.to/gabriel_perez_337aabb5cfd/growing-as-an-engineer-lessons-learned-the-hard-way-5enc</link>
      <guid>https://dev.to/gabriel_perez_337aabb5cfd/growing-as-an-engineer-lessons-learned-the-hard-way-5enc</guid>
      <description>&lt;h4&gt;
  
  
  &lt;strong&gt;Hey, I’m Gabe —Welcome to the Journey!&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;Hey, I’m Gabe! If we haven’t met yet, it’s great to meet you. I’ve been working in software for over 25 years, and in that time, I’ve worn just about every hat — from developer to manager, from running my own business to teaching. Along the way, I’ve made plenty of mistakes, learned from them, and kept going. This is the first in a series of blog posts all about &lt;strong&gt;growing your engineering career&lt;/strong&gt;, and I’m here to share what I’ve learned over the years to help you along your journey.&lt;/p&gt;

&lt;p&gt;Listen, it’s not like I’ve got it all figured out. I’ve struggled a lot through my career, made plenty of mistakes, and I still do. This isn’t a destination — it’s a journey. As long as I’m working, I’ll be making mistakes and learning from them. My goal with this series is to share some of the lessons I’ve learned along the way from practical experience, sprinkled with wisdom from great books I’ve read over the years.&lt;/p&gt;

&lt;p&gt;I tried being a manager but found it wasn’t for me — a theme I’ll revisit throughout this series, as many wrestle with the same decision.&lt;/p&gt;

&lt;p&gt;I’ve also spent a significant part of my career feeling lost, trying to navigate misconceptions about what it means to be a manager versus an individual contributor. There were times when I stumbled, faced setbacks, and had to recover and keep moving forward. Every misstep taught me something valuable, but I often wished I had a guide to help me through those confusing times.&lt;/p&gt;

&lt;p&gt;If you’ve ever felt that way too, you’re not alone.&lt;/p&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;The Lessons I Wish I’d Had&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;I’m focusing on the staff and manager levels because they’re pivotal points in an engineer’s career. But here’s the thing: the lessons I’ve picked up are valuable at any stage, whether you’re just starting out or already well-established. My goal is to help you build the skills and experiences that will allow you to be more intentional in shaping your career — something I wish I’d been. There’s no substitute for living through these moments, but as you reflect on the knowledge I share, my hope is that it’ll guide you on your path. Whether you’re on the IC track, eyeing management, or simply curious about how to work better with your manager or staff engineers, I believe there’s something here for everyone.&lt;/p&gt;

&lt;p&gt;Over the years, I’ve had the privilege of mentoring others — guiding them from their early career days to taking on roles like staff engineer and beyond. I’ve helped them navigate these pivotal transitions, and I love those conversations. But then I thought, &lt;em&gt;“Why not create something that can serve as a reference for even more people?”&lt;/em&gt; This series is my way of giving back by sharing lessons learned from my own journey, as well as insights from great resources like &lt;a href="https://www.oreilly.com/library/view/the-staff-engineers/9781098118723/" rel="noopener noreferrer"&gt;&lt;em&gt;The Staff Engineer’s&lt;/em&gt;&lt;/a&gt; &lt;em&gt;Path&lt;/em&gt; by Tanya Reilly and &lt;a href="https://www.oreilly.com/library/view/the-managers-path/9781491973882/" rel="noopener noreferrer"&gt;&lt;em&gt;The Manager’s Path&lt;/em&gt;&lt;/a&gt; by Camille Fournier. You’ll see these influences woven throughout as I cover key career challenges and opportunities.&lt;/p&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;What You’ll Learn&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;If I’d had access to the lessons I’m sharing here when I first stepped into management — or even before that — I would have made some different decisions. Like many engineers, I thought management was the only way to grow my career, and it took a lot of trial and error to realize that wasn’t true. The reality of management was more complex than I expected, and I quickly learned that it wasn’t the path I wanted for myself. By sharing these experiences and insights, my hope is to help you avoid some of the same mistakes and give you a clearer view of the choices ahead. Whether you’re just starting out or already established, understanding what’s possible in your career and being intentional about your growth can make a huge difference.&lt;/p&gt;

&lt;p&gt;Reflecting on my own experiences, I realized how much I would have benefited from the lessons I’m sharing here. This series is designed to offer the guidance I wish I’d had earlier in my career. So, what’s in it for you?&lt;/p&gt;

&lt;p&gt;By following this series, you’ll gain:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;A Clear Roadmap for Your Career&lt;/strong&gt;: Whether you’re new to the field or a seasoned pro, we’ll explore what’s next and how to navigate each stage. I’ll break it down so you can map your journey with more clarity and confidence.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Realization That Management Isn’t the Only Path&lt;/strong&gt;: Like I once thought, you might feel that management is the only way to advance. But I’ve since learned that technical leadership can be just as fulfilling. We’ll dive into both paths, so you can decide which one suits you best.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;How to Navigate the Staff Engineer Role&lt;/strong&gt;: If you’ve recently stepped into this role and feel a little lost, you’re not alone. I’ve been there too, and I’ll share what I’ve learned about thriving as a staff engineer and growing in that position.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Strategies to Maximize Your Impact&lt;/strong&gt;: Let’s make every keystroke count. I’ve always been inspired by Scott Hanselman’s idea that we all have a &lt;a href="https://www.hanselman.com/blog/do-they-deserve-the-gift-of-your-keystrokes" rel="noopener noreferrer"&gt;limited number of keystrokes&lt;/a&gt; in our lives, so we should use them wisely. By sharing the lessons I’ve learned, my goal is to help you direct your efforts toward things that truly matter — both in your career and your personal growth.&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;Why This Series Will Change the Way You Think About Your Career&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;When I first became a staff engineer, I wasn’t sure what the role really entailed. Looking back, if I’d known what I know now, I could have navigated that transition more smoothly. My mix of experiences helped me along the way, but I wasn’t as intentional as I could have been. This series is designed to give you the insights I wish I’d had back then, so whether you’re already in a leadership role or thinking about it, you’ll gain a clearer understanding of how to handle the challenges of both management and technical leadership.&lt;/p&gt;

&lt;p&gt;Wherever you are in your career, the next step can feel overwhelming. Maybe you’re wondering if you should move into management, or maybe you’re trying to figure out how to make a bigger impact as a staff engineer. These transitions are tough, and you don’t have to go through them alone. This series is designed to &lt;strong&gt;help you through those transitions&lt;/strong&gt; and give you the tools to succeed.&lt;/p&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;What’s Coming Next&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;I want this series to be fun, valuable, and collaborative. Like in software development, I plan to keep things iterative — your feedback will help shape future posts, and we might even pivot based on what you find most useful.&lt;/p&gt;

&lt;p&gt;I also plan to bring in voices from people I know who’ve had different career journeys and growth experiences. I’m thinking of interviewing them and posting those conversations on YouTube to add more perspectives.&lt;/p&gt;

&lt;p&gt;For now, here’s a sneak peek of what’s coming next (unless your feedback leads us somewhere else):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://dev.to/gabriel_perez_337aabb5cfd/management-or-ic-whats-your-next-move-104e"&gt;&lt;strong&gt;Management Myths and Realities&lt;/strong&gt;&lt;/a&gt; 
Is management really the right path, or is it just something people think they should do? We’ll debunk common myths and explore what being a manager actually involves, using insights from &lt;em&gt;The Manager’s Path&lt;/em&gt;.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The Staff Engineer Transition&lt;/strong&gt;
So you’ve become a staff engineer — now what? We’ll dig into how this role differs from being a senior engineer and how to maximize your effectiveness, with help from &lt;em&gt;The Staff Engineer’s Path&lt;/em&gt;.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Leading Without Authority&lt;/strong&gt;
How do you lead when you’re not the boss? This post will explore how staff engineers and technical leaders can influence teams and drive impact without formal authority.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Communication Is Key&lt;/strong&gt;
Whether you’re new to the role or experienced, communication is vital. We’ll talk about how to present ideas, give feedback, and bring people together, regardless of your position.&lt;/li&gt;
&lt;/ul&gt;

&lt;h4&gt;
  
  
  &lt;strong&gt;Let’s Do This!&lt;/strong&gt;
&lt;/h4&gt;

&lt;p&gt;No matter where you are in your career, this series is here to help you grow, explore new roles, and &lt;strong&gt;figure out what comes next&lt;/strong&gt;. From those just starting out to seasoned engineers, I’ve got insights and lessons (with maybe a few light-hearted anecdotes) to share — all aimed at making your journey clearer and more enjoyable.&lt;/p&gt;

&lt;p&gt;Ready to take the next step? Let’s dive into this journey together, learning from both my mistakes and the lessons I’ve gained over the years.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;P.S.&lt;/strong&gt; Got questions or thoughts? I’d love to hear them! Drop a comment or reach out to me via &lt;a href="https://www.linkedin.com/in/gabrielbogea/" rel="noopener noreferrer"&gt;LinkedIn&lt;/a&gt; — let’s keep the conversation going and help each other out.&lt;/p&gt;

</description>
      <category>career</category>
      <category>leadership</category>
      <category>softwareengineering</category>
    </item>
    <item>
      <title>Supercharge Your Mac Terminal: A Step-by-Step Guide to iTerm2, Oh My Zsh &amp; Powerlevel10k</title>
      <dc:creator>Gabe Perez</dc:creator>
      <pubDate>Sun, 09 Feb 2025 03:59:44 +0000</pubDate>
      <link>https://dev.to/gabriel_perez_337aabb5cfd/supercharge-your-mac-terminal-a-step-by-step-guide-to-iterm2-oh-my-zsh-powerlevel10k-41am</link>
      <guid>https://dev.to/gabriel_perez_337aabb5cfd/supercharge-your-mac-terminal-a-step-by-step-guide-to-iterm2-oh-my-zsh-powerlevel10k-41am</guid>
      <description>&lt;p&gt;Setting up my new Mac today, I found myself once again configuring my development environment. Like many developers, I started my journey with the default macOS terminal thinking, "This works fine." But after discovering the power of a properly configured development environment, it transformed my daily workflow. I decided to document the entire process, hoping it might help others setting up their Mac for development. This guide will help you create a modern, feature-rich terminal environment that will make you more productive and – dare I say it – make terminal work enjoyable.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy00146py5ni66qyror7f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fy00146py5ni66qyror7f.png" alt="Screenshot of the resulting iTerm" width="705" height="332"&gt;&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Time to Complete&lt;/strong&gt;: 15-20 minutes&lt;br&gt;
&lt;strong&gt;Compatibility&lt;/strong&gt;: Works on both Intel and Apple Silicon Macs&lt;br&gt;
&lt;strong&gt;Skill Level&lt;/strong&gt;: Beginner to Advanced&lt;/p&gt;
&lt;h2&gt;
  
  
  Quick Start (TL;DR)
&lt;/h2&gt;

&lt;p&gt;For those who just want to get going, here are all the commands in order. If you're new to terminal customization, I recommend following the detailed guide below instead.&lt;/p&gt;
&lt;h3&gt;
  
  
  Ultra-Quick Setup (for the brave)
&lt;/h3&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# One-liner setup (review the script contents first!)&lt;/span&gt;
curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://raw.githubusercontent.com/perezgb/mac-terminal-setup/refs/heads/main/setup.sh | bash
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h3&gt;
  
  
  Standard Quick Setup
&lt;/h3&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# 1. Backup existing configuration&lt;/span&gt;
&lt;span class="nb"&gt;cp&lt;/span&gt; ~/.zshrc ~/.zshrc.backup 2&amp;gt;/dev/null &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"No existing ~/.zshrc"&lt;/span&gt;

&lt;span class="c"&gt;# 2. Install Homebrew&lt;/span&gt;
/bin/bash &lt;span class="nt"&gt;-c&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;

&lt;span class="c"&gt;# 3. Install iTerm2&lt;/span&gt;
brew &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;--cask&lt;/span&gt; iterm2

&lt;span class="c"&gt;# 4. Install Oh My Zsh&lt;/span&gt;
sh &lt;span class="nt"&gt;-c&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;

&lt;span class="c"&gt;# 5. Install Powerlevel10k theme&lt;/span&gt;
git clone &lt;span class="nt"&gt;--depth&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;1 https://github.com/romkatv/powerlevel10k.git &lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;ZSH_CUSTOM&lt;/span&gt;&lt;span class="k"&gt;:-&lt;/span&gt;&lt;span class="nv"&gt;$HOME&lt;/span&gt;&lt;span class="p"&gt;/.oh-my-zsh/custom&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;/themes/powerlevel10k
&lt;span class="nb"&gt;sed&lt;/span&gt; &lt;span class="nt"&gt;-i&lt;/span&gt; &lt;span class="s1"&gt;''&lt;/span&gt; &lt;span class="s1"&gt;'s/ZSH_THEME="robbyrussell"/ZSH_THEME="powerlevel10k\/powerlevel10k"/'&lt;/span&gt; ~/.zshrc

&lt;span class="c"&gt;# 6. Install essential plugins&lt;/span&gt;
git clone https://github.com/zsh-users/zsh-autosuggestions &lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;ZSH_CUSTOM&lt;/span&gt;&lt;span class="k"&gt;:-&lt;/span&gt;&lt;span class="p"&gt;~/.oh-my-zsh/custom&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;/plugins/zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git &lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;ZSH_CUSTOM&lt;/span&gt;&lt;span class="k"&gt;:-&lt;/span&gt;&lt;span class="p"&gt;~/.oh-my-zsh/custom&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;/plugins/zsh-syntax-highlighting
brew &lt;span class="nb"&gt;install &lt;/span&gt;autojump

&lt;span class="c"&gt;# 7. Restart terminal or reload configuration&lt;/span&gt;
&lt;span class="nb"&gt;source&lt;/span&gt; ~/.zshrc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr4twwkfi123scdfkibxf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fr4twwkfi123scdfkibxf.png" alt="screenshot of the result of running all commands" width="777" height="434"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Quick Verification ✓
&lt;/h3&gt;

&lt;p&gt;After running the quick setup, verify everything is working:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Check Oh My Zsh&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="nv"&gt;$ZSH_VERSION&lt;/span&gt;
&lt;span class="c"&gt;# Check Powerlevel10k&lt;/span&gt;
p10k
&lt;span class="c"&gt;# Check plugins&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="nv"&gt;$plugins&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8tl71ao5644j0m9x99ga.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8tl71ao5644j0m9x99ga.png" alt="Screenshot of the result of the verification commands" width="777" height="570"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Before We Begin
&lt;/h2&gt;

&lt;h3&gt;
  
  
  What You'll Need
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;About 15-20 minutes of your time&lt;/li&gt;
&lt;li&gt;Basic familiarity with terminal commands (but don't worry, we'll explain each step)&lt;/li&gt;
&lt;li&gt;A cup of coffee (optional, but recommended ☕)&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  What You'll Get
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;A modern, fast terminal with split-screen capability&lt;/li&gt;
&lt;li&gt;Smart command history search&lt;/li&gt;
&lt;li&gt;Syntax highlighting as you type&lt;/li&gt;
&lt;li&gt;Intelligent directory navigation&lt;/li&gt;
&lt;li&gt;Git status information in your prompt&lt;/li&gt;
&lt;li&gt;Auto-suggestions based on your command history&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Backup Strategy
&lt;/h3&gt;

&lt;p&gt;Before we start, let's ensure we can recover if needed:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Backup existing configurations&lt;/span&gt;
&lt;span class="nb"&gt;cp&lt;/span&gt; ~/.zshrc ~/.zshrc.backup 2&amp;gt;/dev/null &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"No existing ~/.zshrc"&lt;/span&gt;
&lt;span class="nb"&gt;cp&lt;/span&gt; ~/.p10k.zsh ~/.p10k.zsh.backup 2&amp;gt;/dev/null &lt;span class="o"&gt;||&lt;/span&gt; &lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"No existing ~/.p10k.zsh"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Installing &lt;a href="https://brew.sh/" rel="noopener noreferrer"&gt;Homebrew&lt;/a&gt;
&lt;/h3&gt;

&lt;blockquote&gt;
&lt;p&gt;Homebrew installs the stuff you need that Apple didn’t. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If you haven't installed it yet, run:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;/bin/bash &lt;span class="nt"&gt;-c&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Note: You might be asked for your password. This is normal – macOS needs your permission to install system-wide tools.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 1: Installing and Configuring &lt;a href="https://iterm2.com/" rel="noopener noreferrer"&gt;iTerm2&lt;/a&gt;
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;iTerm2 is a replacement for Terminal and the successor to iTerm. It works on Macs with macOS 10.14 or newer. iTerm2 brings the terminal into the modern age with features you never knew you always wanted.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Installation
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;brew &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;--cask&lt;/span&gt; iterm2
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Initial Setup
&lt;/h3&gt;

&lt;p&gt;After installing iTerm2:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open iTerm2 (you can find it in your Applications folder)&lt;/li&gt;
&lt;li&gt;Press &lt;code&gt;⌘,&lt;/code&gt; (Command + Comma) to open Preferences&lt;/li&gt;
&lt;li&gt;Let's make it comfortable to use:

&lt;ul&gt;
&lt;li&gt;Go to 'General &amp;gt; Window' &lt;/li&gt;
&lt;li&gt;Check 'Native full screen windows'&lt;/li&gt;
&lt;li&gt;Under 'Profiles &amp;gt; Default':

&lt;ul&gt;
&lt;li&gt;Set 'Window Size' to 140x40 (this gives you plenty of space to work)&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5wnv0ir9eihkpjhfxa3a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5wnv0ir9eihkpjhfxa3a.png" alt="iTerm2 settings" width="800" height="532"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Setting Up &lt;a href="https://ohmyz.sh/" rel="noopener noreferrer"&gt;Oh My ZSH&lt;/a&gt;
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;Oh My Zsh is a delightful, open source, community-driven framework for managing your Zsh configuration. It comes bundled with thousands of helpful functions, helpers, plugins, themes, and a few things that make you shout...&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h3&gt;
  
  
  Installation
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;sh &lt;span class="nt"&gt;-c&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;curl &lt;span class="nt"&gt;-fsSL&lt;/span&gt; https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Note: If you see a prompt asking to make zsh your default shell, type 'Y' and press Enter.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Installing &lt;a href="https://github.com/romkatv/powerlevel10k" rel="noopener noreferrer"&gt;Powerlevel10k&lt;/a&gt; Theme
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Why Powerlevel10k?
&lt;/h3&gt;

&lt;p&gt;Powerlevel10k makes your terminal:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Show helpful information (like git branch and status)&lt;/li&gt;
&lt;li&gt;Look modern and professional&lt;/li&gt;
&lt;li&gt;Feel faster and more responsive&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Installation Steps
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Install the theme:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone &lt;span class="nt"&gt;--depth&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;1 https://github.com/romkatv/powerlevel10k.git &lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;ZSH_CUSTOM&lt;/span&gt;&lt;span class="k"&gt;:-&lt;/span&gt;&lt;span class="nv"&gt;$HOME&lt;/span&gt;&lt;span class="p"&gt;/.oh-my-zsh/custom&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;/themes/powerlevel10k
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Set up the theme:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Open your zsh configuration file in TextEdit (if you prefer)&lt;/span&gt;
open &lt;span class="nt"&gt;-e&lt;/span&gt; ~/.zshrc

&lt;span class="c"&gt;# Or use the terminal to make the change&lt;/span&gt;
&lt;span class="nb"&gt;sed&lt;/span&gt; &lt;span class="nt"&gt;-i&lt;/span&gt; &lt;span class="s1"&gt;''&lt;/span&gt; &lt;span class="s1"&gt;'s/ZSH_THEME="robbyrussell"/ZSH_THEME="powerlevel10k\/powerlevel10k"/'&lt;/span&gt; ~/.zshrc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;Restart iTerm2 or run:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;source&lt;/span&gt; ~/.zshrc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Configuring Powerlevel10k
&lt;/h3&gt;

&lt;p&gt;When you restart iTerm2, you'll see the Powerlevel10k configuration wizard. The wizard will:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Check if you have the required fonts&lt;/li&gt;
&lt;li&gt;Help you install them if needed&lt;/li&gt;
&lt;li&gt;Guide you through customizing your prompt&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Follow the wizard's recommendations for the best experience. I suggest:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Yes to all powerline symbols&lt;/li&gt;
&lt;li&gt;Unicode character set (better compatibility)&lt;/li&gt;
&lt;li&gt;Dark color scheme (easier on the eyes)&lt;/li&gt;
&lt;li&gt;Classic prompt style (clean and professional)&lt;/li&gt;
&lt;li&gt;Yes to transient prompt (saves space)&lt;/li&gt;
&lt;li&gt;Yes to instant prompt (faster startup)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;If the wizard doesn't start automatically, type &lt;code&gt;p10k configure&lt;/code&gt; and press Enter.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: Essential Plugins
&lt;/h2&gt;

&lt;p&gt;Let's add three must-have plugins that will make your terminal experience much better:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Zsh Autosuggestions
&lt;/h3&gt;

&lt;p&gt;This plugin suggests commands as you type, based on your history:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/zsh-users/zsh-autosuggestions &lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;ZSH_CUSTOM&lt;/span&gt;&lt;span class="k"&gt;:-&lt;/span&gt;&lt;span class="p"&gt;~/.oh-my-zsh/custom&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;/plugins/zsh-autosuggestions
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  2. Zsh Syntax Highlighting
&lt;/h3&gt;

&lt;p&gt;Makes your commands colorful and helps spot mistakes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;git clone https://github.com/zsh-users/zsh-syntax-highlighting.git &lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;ZSH_CUSTOM&lt;/span&gt;&lt;span class="k"&gt;:-&lt;/span&gt;&lt;span class="p"&gt;~/.oh-my-zsh/custom&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;/plugins/zsh-syntax-highlighting
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  3. Autojump
&lt;/h3&gt;

&lt;p&gt;Lets you jump to directories by typing &lt;code&gt;j&lt;/code&gt; and part of the directory name:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;brew &lt;span class="nb"&gt;install &lt;/span&gt;autojump
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Setting Up the Plugins
&lt;/h3&gt;

&lt;p&gt;Open your configuration file:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;open &lt;span class="nt"&gt;-e&lt;/span&gt; ~/.zshrc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Find the &lt;code&gt;plugins=&lt;/code&gt; line and update it to:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;plugins&lt;/span&gt;&lt;span class="o"&gt;=(&lt;/span&gt;
    git                         &lt;span class="c"&gt;# Git shortcuts and features&lt;/span&gt;
    zsh-autosuggestions        &lt;span class="c"&gt;# Fish-like autosuggestions&lt;/span&gt;
    zsh-syntax-highlighting    &lt;span class="c"&gt;# Fish-like syntax highlighting&lt;/span&gt;
    autojump                   &lt;span class="c"&gt;# Smart directory jumping&lt;/span&gt;
&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;em&gt;Note: You can also edit this file directly in the terminal using &lt;code&gt;nano ~/.zshrc&lt;/code&gt; if you prefer.&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Essential Shortcuts You Now Have
&lt;/h3&gt;

&lt;p&gt;After completing the setup, you'll have these powerful shortcuts available:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;Ctrl + R&lt;/code&gt;: Fuzzy search through command history&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Ctrl + T&lt;/code&gt;: Fuzzy find files in current directory&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;j previous_directory&lt;/code&gt;: Jump to previously visited directory&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;gs&lt;/code&gt;: Git status (example of Oh My Zsh's git shortcuts)&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Take folder_name&lt;/code&gt;: Create and cd into a directory&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Cmd + D&lt;/code&gt;: Split iTerm2 pane vertically&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Cmd + Shift + D&lt;/code&gt;: Split iTerm2 pane horizontally&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Cmd + ]&lt;/code&gt; / &lt;code&gt;Cmd + [&lt;/code&gt;: Navigate split panes&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Troubleshooting FAQ
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Q: The Powerlevel10k configuration wizard isn't starting!&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
A: Run &lt;code&gt;p10k configure&lt;/code&gt; manually&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Q: My prompt looks wrong or has missing symbols!&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
A: Run &lt;code&gt;p10k configure&lt;/code&gt; and follow the font installation steps&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Q: A plugin isn't working!&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
A: Verify installation and configuration:&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;   &lt;span class="nb"&gt;ls&lt;/span&gt; &lt;span class="k"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;ZSH_CUSTOM&lt;/span&gt;&lt;span class="k"&gt;:-&lt;/span&gt;&lt;span class="p"&gt;~/.oh-my-zsh/custom&lt;/span&gt;&lt;span class="k"&gt;}&lt;/span&gt;/plugins/
   &lt;span class="c"&gt;# Check .zshrc plugins section&lt;/span&gt;
   open &lt;span class="nt"&gt;-e&lt;/span&gt; ~/.zshrc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Q: How do I uninstall everything?&lt;/strong&gt;
A: Run these commands:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;   &lt;span class="c"&gt;# Uninstall Oh My Zsh&lt;/span&gt;
   uninstall_oh_my_zsh
   &lt;span class="c"&gt;# Remove iTerm2&lt;/span&gt;
   brew uninstall &lt;span class="nt"&gt;--cask&lt;/span&gt; iterm2
   &lt;span class="c"&gt;# Restore original configuration&lt;/span&gt;
   &lt;span class="nb"&gt;cp&lt;/span&gt; ~/.zshrc.backup ~/.zshrc
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Next Steps
&lt;/h3&gt;

&lt;p&gt;Congratulations! You now have a modern, powerful terminal setup.&lt;/p&gt;

&lt;p&gt;How's your new terminal looking? Share a screenshot in the comments below! And if you have any questions or run into issues, feel free to ask in the comments.&lt;/p&gt;

</description>
      <category>macos</category>
      <category>terminal</category>
      <category>zsh</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
