A podcast focused on the non-technical side of being a developer, because your career is about more than the code you write.
In the season two finale we take a listen back to all of the advice shared by our guests. While each piece of advice focuses on a different non-technical aspect of a career in development, they all share a commonality. Each one is a result of mistakes made, lessons learned and the experiences of each guest. Offering valuable insights that you can use to reflect and grow in your own development career. Also, bloopers!Guests from this SeasonKelly WaltonJames HickeyDouglas Bryant JrKarl HughesAli SpittelGus ChildsAngie JonesAndy HuntDave ThomasBen OrensteinTracy Lee
There are any number of ways development teams can work together to make sure they are improving as a group and as individuals. In this episode we talk with Tracy Lee (@ladyleet), JavaScript developer and CEO of ThisDotLabs, about the benefits of process, abstraction and mentorship. Tracy talks about how her team uses the "P.A.M stack" to support growth and improvements for all developers. We discuss how a team can setup a process that works for them, how to abstract out and share domain knowledge between developers and what a supportive mentorship culture can do for individuals and teams. When you and your team have a process that works for you, are able to share knowledge and provide a learning based culture, everyone will have an environment to grow in their development careers.Links from this EpisodeTracy LeeThisDotLabsP.A.M StackPrevious Episodes MentionedUsing D.U.M.B goals and S.M.A.R.T goals to grow your development career.Have an idea for a future episode?Tweet Us: @devuppodcastEmail Us: hello@developingup.com
Development is not a individual activity, it is a team activity. To grow your development skills and knowledge you need to be able to work collaboratively with other developers. In this episode we talk with Ben Orenstein (@r00k), co-host of The Art of Product Podcast and co-founder and CEO of Tuple about pair programming. Ben talks about how pairing with other developers early in his career helped him grow. We discuss methods developers can use for implementing pairing and the benefits it has for individuals and teams. When you are able to learn from and teach other developers, you'll find that your own development capabilities grow in new ways.Links from this EpisodeBen OrensteinThe Art of Product PodcastTupleLearn to Pair guideHave an idea for a future episode?Tweet Us: @devuppodcastEmail Us: hello@developingup.com
Progressing in every aspect in a development career requires being pragmatic. It means to be engaged in what you do and approach things in a sensible and realistic way. In this episode we talk with David Thomas (@pragdave) and Andrew Hunt (@PragmaticAndy), two people who have literally written the book on being a pragmatic programmer. Dave and Andy share why they went back and revised their pivotal book The Pragmatic Programmer and what has changed in the world of development in the 20 years since its initial release. We discuss what it takes to be an engaged developer and why it is important to do so. Dave and Andy provide their insights on the responsibilities developers have to their work and how to grow from it. Being engaged and growing as a developer requires approaching your career in a pragmatic way. Listeners of this episode receive a 35% discount when purchasing The Pragmatic Programmer* by using the discount code "DEVELOPINGUP" at checkout.Links from this EpisodeDavid ThomasAndrew HuntThe Pragmatic Programer* (35% off when you enter discount code DEVELOPINGUP)The Pragmatic BookshelfPrevious Episodes MentionedContinuous LearningLeadershipHave an idea for a future episode?Tweet Us: @devuppodcastEmail Us: hello@developingup.com*We are a participant in the Rakuten Marketing Affiliate Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to affiliated products.
The core of having a career in development is focused on writing code. To grow and improve in your career, means improving on the code that you write. To do so, requires insights and feedback from those you work with. In this episode we talk with Angie Jones (@techgirl1908), a developer advocate, about the benefits of code reviews. Angie provides her insights into what developers and teams can do to have meaningful code reviews that look beyond just syntax issues. Our conversation focuses on helpful mindsets to take when participating in a code reviews, roles developers of all levels can take on and how ultimately reviews help developers improve. Growth in your development career requires improving your technical capabilities and code reviews are one tool to do so.Links from this EpisodeAngie Jonesangiejones.tech10 Commandments of Code ReviewsPrevious Episodes MentionedThe Art of the Code ReviewHave an idea for a future episode?Tweet Us: @devuppodcastEmail Us: hello@developingup.com
For a majority of developers your career is not going to take place at a single location. In how markets and technologies change it is likely that at some point in your career you will need to be prepared to make a change. In this episode we talk with Gus Childs (@guschilds), a Front-End developer, about navigating career transitions. Gus provides insights from his own experiences on how developers can prepare for making a job change. During our conversation we talk about important steps to evaluate your current work environment, how to prepare for a transition and what to look for in new opportunities. You have one career and many jobs will be stepping stones in that career, so make sure you are taking the right steps. Links from this Episode Gus Childs guschilds.com Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
To be able to take risks, learn and grow in your development career you need to have trust. Trust in your co-workers, teams but most importantly trust in yourself and your capabilities. In this episode we talk with Ali Spittel (@aspittel), Software Engineer and co-host of the Ladybug Podcast about building trust. Ali shares her thoughts and experiences from being a developer and teacher about how to establish and grow trust in yourself and others. During our conversation we talk about ways to over come imposter syndrome, keeping track of accomplishments and how groups of developers can build trust together. Trusting yourself and your peers is the only way to be able to confidently take risks and challenge yourself to grow. Links from this Episode Ali Spittel Ladybug Podcast Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
An important aspect to growing a career in development is the ability to communicate technical details to less technical audiences. Improving your ability to communicate clearly is hard to do if you only practice in high-pressure situations. In this episode we talk with Karl Hughes (@karllhughes) CTO at The Graide Network and founder of CFPLand about the value becoming a public speaker has on a developers career. Karl shares insights he has learned from interviewing dozens of technical speakers and his own personal path in public speaking. During our conversation we talk about how to get into public speaking as a developer, how to figure and plan a talk and how to apply the skills gained from it into your everyday development career. Being able to clearly communicate is a mandatory skill to progress in your development career and public speaking is an effective way to get better at it. Links from this Episode Karl Hughes karllhughes.com CFPLand Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
As a developer you are responsible for all of the code you and your team write and implement. If that code is not secure it can cause problems for your projects, your company and your career. In this episode we talk with Doug Bryant Jr (@cybergent_101) an IT security Analyst and host of the Intrusion Diversity System Podcast about the role security plays in a developers career. Doug shares his experience workin in cyber security and with developers. In our conversation we discuss what can happen when developers are not security minded, how to keep security in mind during development and what to pay attention to before writing secure code. Links from this Episode Doug Bryant Jr Intrusion Diversity System Podcast OWASP Vulnerability DB JScrambler Security Weekly Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
You are the only person who can take control of your career in development and make it what you want. In this episode we talk with James Hickey (@jamesmh_dev), a .NET developer about the concept of career ownership. James shares his journey into a career in development and what he needed to do to shape his career direction and opportunities. During our conversation we talk about why taking control of your career is imperative to grow as a developer, methods you can use to find a direction in your career and ways you can set yourself up for career success. Links from this Episode James Hickey Career Ownership Newsletter Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
When a majority of your day is spent on a computer where you work does not matter as much as how you work and how you communicate. In this episode we talk with Kellie Walton(@roundoctagon), Director of Client Services & Strategy at Isovera about working Remotely. Kellie outlines the benefits and challenges she's experienced working with remotes team. During our conversation we talk about tools and methods that are helpful for maintaining communication, support and camaraderie amongst remote team members. We also discuss different forms of remote work and how developers can start to introduce the practice at their company. Which in turn, Build up the behaviors that will grow your communication abilities that will aid in your long term career growth. Links from this Episode Kellie Walton Isovera Remote Work: How to be the team MVP, without ever setting foot in the office Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
In the season two finale we take a listen back to all of the advice shared by our guests. While each piece of advice focuses on a different non-technical aspect of a career in development, they all share a commonality. Each one is a result of mistakes made, lessons learned and the experiences of each guest. Offering valuable insights that you can use to reflect and grow in your own development career. Also, bloopers! Links from this Episode Listener Survey Guests from this Season Jim Fisk Stephanie Luz Colby Cook Tom Feeley Jonathan Solórzano-Hamilton Carie Fisher Aubrey Sambor Adam Bergstein Chris Albrecht Mark Henderson Dwayne McDaniel Chris Free Brian Perry Nathan Dentzau Heather Staudt
Central to being a successful developer is establishing tactics for communicating ideas, needs and tasks with other people. In this episode we talk with Heather Staudt, UX Product Manager at BioRAFT about communication. Heather outlines the importance communication plays on her team to correctly understand and explain development tasks and needs. We discuss why communication is an imperative part of any team, methods for to how to best communicate with others and things to remember when attempting to communicate technical details to less technical people. Having your code communicate with computers is important to your day to day success, but being able to communicate to the people you interact with is imperative to your long term career success. Key Takeaways Ninety percent of developer communication, it explaining technical topics to less technical people. Learn what communication method or medium works for the person you want to communicate with and use that method. Communication is not limited to the word you use, don't forget to use diagrams, drawings or even physical motion. Links from this Episode Heather Staudt BioRAFT Drupal Nights Listener survey Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
To progress in a development career requires motivation. An underlying personal need and goal to push your self to improve and grow. In this episode we talk with Nathan Dentzau (@nathandentzau), senior developer at Oomph Inc about being motivated. Nathan shares how he's motivated himself to grow in his career as a developer. We discuss where to find personal motivation and how to look to others for support. You have one career in development and its up to you to make it what you want. Key Takeaways Beyond the code, self assess what drives you to improve and grow. Set goals to work towards, use those to inspire your career direction. When you are not growing in the way you want, ask Why. Links from this Episode Nathan Dentzau Oomph Inc Motivation and Inspiration Listener survey Previous Episodes Mentioned Using D.U.M.B goals and S.M.A.R.T goals to grow your development career. Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
Being able to adapt and alter approach due to changing requirements, technologies and methods is an important part of growing and thriving as a developer. With out doing so, there is risk of getting stuck or bottlenecked in your career. In this episode we talk with Brian Perry (@bricomedy), Senior Front End developer at HS2Solutions about learning how to adapt as a developer. Brian shares the methods he's learned from being an improv comic and former projet manager and how they have helped him be able to changes and grow in development. We discuss methods developers can use to adapt to changing project requirements, teams and technologies. Explaining how doing so will grow your career in ways you cant foresee. Key Takeaways The benefit of being adaptable is that you can adjust your approach and do not get stuck in a single path. Use tools such as User Stories to define requirements, leaving the technical approach open to different options. Keep a mindset of contsant learning to keep yourself open to new methods and approaches. Talk with your team or peers on how they would approach a problem, to gain an understanding of different solutions. Links from this Episode Brian Perry brianperryinteractive.com HS2Solutions.com Previous Episodes Mentioned The three key phrases you need to know to be a great developer Continous Learning Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
Networking plays an important part in a career in development. Connecting with other people can provide opportunities for personal and career growth. In this episode we talk with Chris Free (@chrisfree), Partner and Creative Director of Chromatic, about the value of being able to network with other people. Chris shares how his career is partly the result of the people he has surronded himself with and how it has benefited his own growth. We discuss why networking with others is vital, the values and opportunities it provides, and go over a few methods for building those personal connections. Key Takeaways Careers are not built in a vacuum, they rely on other people. Attend conferences, meetups and development events to find others who share your passion. Talking with others can be challenging, start by emulating someone you know who is good at it. Links from this Episode Chris Free Chromatichq.com So You Want To Start Your Own Digital Agency? Previous Episodes Mentioned Building Your Developer Network Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
As a developer it is common to focused on only the What and How of what you are developing. Those helps you plan a solution, but they do not allow you to understand if you are delivering the correct value. In this episode we talk with Dwayne McDaniel (@McDwayne), developer advocate for Pantheon about the importance of understanding the Why of your development. We discuss why it is important to know the goals of your project. How doing so allows you to deliver the correct product and results. Further we talk about how that allows you to deliver value to your clients and your development career. Key Takeaways Always ask "what are we trying to accomplish, what is the end goal"? Build for the KPIs (Key Performance Indicators) that are relevant to your project. Present your solutions/products in terms of how they drive the expected results/goals. Links from this Episode Dwayne McDaniel Nobody Wants a Website They Want Results Previous Episodes Mentioned Knowing What Not to Build Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
A career in development is full of challenges. However it can be easy to slip into a cycle of development stagnation, approaching every problem the same way, with the same tools. In this episode we talk with Mark Robert Henderson (@hackforthesea), a lead developer at CUASHI and organizer of the Hack for the Sea hackathon about the values of finding ways to challenge yourself as a developer. We discuss how challenging yourself allows you to grow as a developer, as well as, some examples of ways to challenge yourself. Levels of "Developer Enlightenment" Not knowing things and knowing you dont know things. Not knowing things and thinking you know (all) things. Knowing things and thinking you know (all) things. Knowing things and knowing you still dont know things. Methods to Challenge Yourself Question your approach to solving a problem, and try a different method. Be open to feedback to your work in code reviews. Attend a Hackathon, use a new tool, language or framework. Links from this Episode Hack for the Sea Hackathon 2018 Mark Robert Henderson Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
Your development career is not an isolated part of your life. It affects and is effected by the other parts of your life. In this episode we talk with Chris Albrecht (@chrisalbrecht), Senior Developer at Lullabot (@lullabot) about why it is important to maintain balance in your life as a developer. In our discussion, Chris outlines three aspects of your life to balance beyond "work/life". We talk about how doing so allows you to maintain a "Happy place" that allows you to be the best developer and self that you can be. Chris shares his own personal journey to become balanced and share tips for how to do so yourself. Things to Balance Professional: The part of your life related to work. Personal: The part of your life out-side of work. Private: The part of your life, that is just for you. Links from this Episode Managing Your Most Important Resource: You Behind the Screens Podcast Previous Episodes Mentioned Why it is important that you maintain a healthy work/life balance. Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
Technical leadership is not a specific role, it is a mindset. In this episode we talk with Adam Bergstein (@n3rdstein), V.P. of Engineering at Hook42 (@hook42inc) about what it takes to be a technical leader. In our discussion we tak about behaviours and traits that technical leaders embody and exhibit. Adam shares his personal journey of becoming a technical leader. Explaining how developers of any level, from junior to senior, can become leaders themselves. You have the opportunity to embody these traits to grow your development career. Key Takeaways Technical Leadership is a state of mind, not a specific role. Leadership is not about being the smartest person in the room. Lead by example and empower others. Three Leadership traits Focuses on quality of their work. Constantly learns about business needs and team needs. Not afraid to fail and helps others when they fail. Links from this Episode nerdstein.net Understanding Technical Leadership The Pragmatic Programmer* Previous Episodes Mentioned Leading By Example Dealing with Setbacks Continous Learning Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com *We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.
Development is full of complexities and challenges. Because of this, it can be difficult to maintain confidence in your development abilities. In this episode we talk with Aubrey Sambor (@starshaped), a front-end developer about Imposter Syndrome. Something that effects almost all developers at some point in their careers. Aubrey shares her personal experiences dealing with Imposter Syndrome and how she works through it. We discuss the five different types of Imposter Syndrome developers may experience. Fore each we outline their causes, effects and methods for overcoming. Key Takeaways Almost all developers experience Imposter Syndrome, you are not alone. You are not in your position due to luck, but because of your hard work. When you experience Imposter Syndrome dont go at it alone, turn to others for help. Five Types of Imposter Syndrome The perfectionist: Continuelly Setting and failing at over abmitious goals. The Super-person: Pushing to work harder and harder to the point overload. Natural Genuinus: If something is not hard, then it is not a sign of success. Rugged Individualist: Assuming that asking for help is a sign of weakness. The Expert: Success is gained through luck and not experience. Links from this Episode Aubrey on Twitter 5 Different Types of Imposter Syndrome The Secret Thoughts of Successful Women* by Valerie Young Mikes on the road "recording booth" Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com *We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.
Many different types of people interact with the projects that we develop. To be successful then we need to be able to approach our work from their different perspectives. In todays episode we talk with Carie Fisher(@cariefisher) from Hook42 who is a front-end web developer and advocate for accessibility. We discuss why applying different perspectives make our development work and careers better. Carie shares her thoughts and experiences with accessibility, Inclusive Design and Development. We also discuss ways you can apply different perspectives to your development work. Key Takeaways Approach your work from the mind set of "Will it work for them", instead of "it works for me". Use personas to guide developing your work for other types of people. Open your code to reviews and input from other developers. Don't try to do everything at once, make one small improvement at a time. Keep trying. Links from this Episode Recording pillow fort Carie Fisher on Medium How to Boost Your Website’s Accessibility + SEO Previous Episodes Mentioned The Art of the Code Review Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
Development is about building solutions to solve problems. But when developing solutions, do you need to build everything yourself? In this episode we talk with Jonathan Solórzano-Hamilton (@jhsolor, @peachpie), Assistant Director of IT Operations and Architecture for ORIS at UCLA. We discuss why as a developer it is part of your job to know when not to build something yourself. During our conversation we outline when to use existing software and the benefits of doing so. We also outline guidelines to follow when looking for pre-existing solutions. Jonathan also provides a recap of his personal experience of what can happen when a development team tries to build everything in house. Key Takeaways Building everything yourself comes with risks and technical debt for you and your team. Focus your efforts on building whats important for your project, for everything else try and use expsing packages. It's part of your job to inform/sell your clients/company how to best build solutions. When looking for existing software Search for packages on reputable sources Look at community usage, is the package being used? check package activity, is it still supported? Review the license is it compatible with your project? Links from this Episode We fired our top talent. Best decision we ever made The Making of Tesla Completing the Netflix Cloud Migration Pervious Episodes Mentioned Using D.U.M.B goals and S.M.A.R.T goals to grow your development career. Taking Risks Have an idea for a future episode? Tweet Us: @devuppodcast Email Us: hello@developingup.com
The only way to grow and progress in your development career is to be constantly learning. In this episode we talk with Thomas Feeley (@thomasdfeeley), who has spent his development career learning new skills to keep up with the ever changing development landscape. During our conversation we discuss why it's important for developers to be constantly learning and how it supports career growth. We discuss methods for determining what to learn and how to grow and tools to use to support that growth. Key Takeaways Continuous learning allows you to grow your development career in ways that you are passionate about, not just in ways your project dictate. Introspective learning: Asking "Why" questions to learn when to use that tool, framework or understand a requirement. Expansive learning: Asking "What" and "how" questions, to learn where you need to build-up your knowledge of the tasks surrounding your development. Links from this Episode We fired our top talent. Best decision we ever made The Saga Continues by Wu-Tang Automating Your Workflow with Gulp.js by Zell Liew tomfeeley.com Have an idea for a future episode? Tweet Us: (@devuppodcast) Email Us: hello@developingup.com
Development is not just an activity, it is a state of mind. In this episode we sit down with Colby Cook of Genuine (@wearegenuine) and talk about what it means to have a developer mindset. In our conversation we discuss what development has in common with construction, why approaching development as a series of steps is important and what you need to know about yourself as a developer. Key Takeaways Remember to approach development as a series of steps that build ontop of each other. Be mindful of what problems you are trying to solve, only build to solve those problems. Keep in mind who you are, what you know and what you don't know. Use your team to balance stengths and weaknesses. Links from this Episode Genuine View of Chicago Previous Episodes Mentioned -Taking Risks Have an idea for a future episode? Tweet Us: (@devuppodcast) Email Us: hello@developingup.com
An important part of your development career is understanding when and how to take risks. In the first episode of season two we sit down with Jim Fisk (@jimafisk) and Stephanie Luz (@SayStephanieNow) of Jantcu (@jantcutech) and talk about taking risks as a developer. In our conversation we discuss why taking risks is important, the two types of risks you'll face and how to balance risk with reward in development. Key Takeaways Risk can be a catalyst for career growth. Without taking risks you’ll stagnate as a developer. Overt risks are easy to quantify and measure. Covert risks are harder to quantify and take a long time to measure. Questions to ask when taking a risk What is the worst potential loss? What is the best potential gain? Does the gain outweigh the loss? (to you) Links from this Episode Jantcu JAMStack Previous Episodes Mentioned Asking for Help Have an idea for a future episode? Tweet Us: (@devuppodcast) Email Us: hello@developingup.com
In the final episode of season one we discuss the one constant in your development career, change. We focus the conversation on three main areas of change; in your projects, in your role & responsibilities and in your life. Highlighting ideas from previous episodes we talk about how to approach changes in these areas with a constructive, positive mindset. We end the episode with a few announcements about changes coming to the podcast, as well as, a few bloopers. Special Note A big thank you to Jake Rainis (@jakerainis)for his hard work and partnership in making this first season a success. We will miss him as a host, and wish him the best! Be sure to follow Jake at jakerainis.com Why managing change is important Not being able to handle changes, turns them into roadblocks Taking control of changes, turns them into positive learning experiences. Not being fearful of change provides for new opportunities and growth. Managing Project Changes Be confident in saying, Yes, No or I Don't Know. Deliver thought out estimates and defend them. Develop a plan to accomplish the changes. Managing Role & Responsibility changes Get comfortable with being in uncomfortable situations Treat mistakes as learning opportunities. No matter your role, lead by example. Managing life changes Establish long term and short term goals Maintain a healthy work/life balance Keep your day fresh and find daily positive opportunities. Links from this Episode The Clean Coder* by Robert C. Martin Previous Episodes Mentioned Using D.U.M.B goals and S.M.A.R.T goals to grow your development career. Why it is important that you maintain a healthy work/life balance. The three key phrases you need to know to be a great developer. Get comfortable being uncomfortable. Handling Mistakes Gracefully as a Developer Leading by example Developing a Plan Task Estimation Techniques Keeping your Day Fresh Listener Challenges Tweet us how you manage changes positively. *We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.
At some point every developers will hit a slump and find their days feeling stale. To keep your development career progressing and exciting it is important that you find ways to keep every day "fresh". In this episode we discuss why it is important to find new development challenges everyday and avoid slipping into a stale daily routine. We offer a few ideas on how to find new daily challenges to inspire you to keep your day "fresh". Why keep your day “fresh” Helps keep you inspired and engaged with your projects/work. Helps you to continue to innovate in your development approach Putting yourself in position of new challenges and unknowns helps you grow. Ideas for how to keep your day “fresh” Set aside time to learn a new language or technology Identify repetitive tasks and either delegate or automate them Surround yourself by new and positive people Get a change of scenery by moving your desk, or yourself. Listener Challenges Share with us what “keeping your day fresh” means to you. Think about past experiences,what excited you about development how can you capture that day to day? Seek out new opportunities and challenges, do not wait for them to come to you! Get up take a break, walk around, you need a breath of fresh air! Links from this Episode Taking People with you* By David Novak Fluid Stance Board* Previous Episodes Mentioned How you identify, treat and prevent the three types of developer burn out. Avoiding Development Stress Task Estimation Techniques Using D.U.M.B goals and S.M.A.R.T goals to grow your development career. How to give and receive feedback Establishing Office Connections To get more done as a developer you need a personal task management system. *We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.
The path of development is full of wrong turns, pitfalls and mistakes. You cannot control when a setback will occur on your project, on your team or in your career. What you can control is how you react to the situation. In this episode we discuss what to do when development setbacks occur and how to approach them with a positive mindset. We outline a four step approach towards tackling setbacks and turning them into grown opportunities. Four Steps for Dealing with Setbacks Acknowledge: Accept that a mistake has happened, do not ignore it. Understand: Evaluate why the setback occurred. What lead up to it? Plan: Establish a plan of attack to fix the problem and prevent it from happening again. Execute: take action on your plan and monitor your progress. Key Takeaways Setbacks are going to happen in your projects, teams, career you cannot control when setbacks occur, but you can control your reaction to them. When faced with a setback: Acknowledge, Understand, Plan and Execute. Don’t dwell on your past mistakes, always focus on what is next. Listener Challenges Share with us how you have dealt with development setbacks. Reflect on how a past setback has helped your development career grow. Links from this Episode Hit by a Bus Scenario Previous Episodes Mentioned Establishing Office Connections
In development some stress helps to provide a sense of urgency. However too much stress can degrade your ability to produce your best work. In this episode we discuss some common causes of stress in development and why they can become problems. We then talk about a few methods you can use to reduce stress in your development career. Causes of development stress Internal: Imposter Syndrome, Real Developer Syndrome, unwillingness to collaborate. External: Pressure from others, Timelines and deadlines, work/life imbalances. Why too much stress is bad Leads to development burnout Can lead to health issues Prevents you from doing your best work How to prevent development stress Remember you are only “building sandcastles” Take a break and step away from the cause of the stress Ask others for help. Links from this episode Deep Work* by Kal Newport How to Invest your Time like Money* by Elizabeth Grace Saunders Listener challenges Share your methods for reducing development stress. Spend a day without context switching. Focus on a single task. Chunk out your next week into buckets of time. Previous episodes mentioned The Four Attributes of a Great Development Team Procrastination vs. Precrastination How you identify, treat and prevent the three types of developer burn out. *We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.
When it comes to getting tasks completed there are two types of developers. Those who get things done as soon as possible and those who wait until the last minute. Being one is not better than being the other as long as you are able to deliver your best work. In this episode we are discussing the differences between procrastinators and precrastinators. We talk about the pro’s and con’s of each approach and how they affect your development work. Sharing tips to improve your abilities to get things done, not matter which type of developer you are. Procrastination vs. Precrastination Procrastination: Waiting until the last minute to complete tasks. Precrastination: Completing a task as soon as it is assigned. Pros of Procrastination Creates a sense of urgency that forces you to focus on getting a task completed. Helps you to not stress about a task, until you absolutely have to focus on it. Prevents over-engineering by focusing on completing only the work you need to. Pros of Precrastination Creates a sense of urgency to get a task done as soon as possible. Allows for plenty of time to get a task completed. Provides opportunities to revise you approach to a task. Cons of Procrastination Prevents the opportunity to explore different approaches. Provides risk of running out of time to complete a task. Potentially to compromise the quality of work in order to get it done in time. Cons of Precrastination Increases chances of over-engineering a solution. Potentially increased stress over completing a task when it is on your todo list. May be easier to be distracted from what you focus should be on. Tips for Improving as a Procrastinator or Precrastinator Plan out the timeline you have to get work done. Spread out your workload to give yourself plenty of time to think. Focus on creating sustainable habits of your development approach. Listener Challenges Let us know, are you a Precrastinator or a Procrastinator?
Great developers continually seek to improve the code they work on and write. In this episode we discuss how you can use code reviews to help yourself and your team become better developers. We discuss a few different scenarios, outside the formal “Code Review” that can provide you a chance to improve your code. From there we outline benefits reviewing code offers to not only reviewees and reviewers, but also teams and projects. Finally we provide five general guidelines you can follow to make every code review a positive learning experience. Types of code reviews Formal “Code Review”: Evaluating code and its purpose with another developer(s). Part of the QA process: reviewing code output. Automated reviews: automated testing, linters, performance benchmarking Pair programming: Writing code with another developer PR reviews: submitting code to be merged into a project by another developer. Benefits of code reviews Project benefits: Keeps project codebase clean and stable. Team benefits: Aligns team members on coding standards and shares knowledge. Reviewee benefits: Enforces code quality and improves making common mistakes Reviewer benefits: Provides visibility into other methods of approaches. General code review guidelines No bad attitudes: Keep a positive mindset, code reviews are a learning experience. Set goals: what is the purpose of this code review? Less is more: No more than 400 lines at a time, 30 - 60 minutes max. Annotate: Keep code commented to provide information about what it does. Document: Outcome of code review, action plan of next steps. Listener Challenges Next time you work on a piece of code, try to leave it better than you found it. Sr. Developers, have a Jr. Developer review some of your code. Jr. Developers, ask a Sr. Developer to sit with you and review a some of your code. Links from this episode Best Practices for Code Reviews Previous episodes mentioned Leading by Example To get more done as a developer you need a personal task management system
Estimating is hard. In fact, estimating is sometimes considered one of the hardest aspects of development. While for reasons beyond your control you can never guarantee the accuracy of our estimates, you can control how well you deliver and defend the estimates you provide. In this episode we are not talking about how you can provide better estimate numbers, but the processes you can develop in yourself so that you can be confident about the estimates you deliver. Why estimating is an important development skill Something that you will be constantly asked to do in your development career Helps you to think more critically of your development work Provides opportunities for collaboration and communication with our team Before creating an estimate Establish what you know vs. what you do not know Ask questions to remove as many gaps as possible Have the mindset that your estimates will never be the actual number Methods of estimating PERT system: Optimal value, Nominal value, Pessimistic value. Averaged. Planning Poker: work with team to discuss and agree upon a value. Comparative: Look at similar previous work, how long did that take you? Breakdown: Split item into smaller workable pieces then estimate the pieces. How to deliver estimates Establish that you are providing your best guess based on what you know Provide context and information around your estimate Defend your estimate with your assumptions and experiences. Record and get sign-off of your estimate from stakeholders. Listener Challenges What methods/tools do you use to develop estimates? What are your opinions about estimates? Write some code to generate a PERT number for your estimates. Links from this episode Deep Work* by Kal Newport The Clean Coder* by Robert C. Martin Law of large numbers Previous episodes mentioned Developing a Plan The three key phrases you need to know to be a great developer. *We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.
To make consistent progress in your development you need to develop a plan. Without a plan you risk wasting time, duplicating work or working towards the wrong goals. In this episode we discuss the importance and methodologies behind developing a plan. We talk about why having the skills to develop a plan can help you in every aspect of your development career. Breaking down plan into four phases. Teaching you how to D.R.O.P. a development plan. Finally we address what to do when it turns out your current plan is not working and how to get back on track. Importance of developing a plan Allows to be able to measure progress Allows for alignment on goals and success measurement Helps you prioritize and make the best use of your time When to develop a plan When writing code and building functionality When working with a team on a development project When working on development career goals How to develop a plan using D.R.O.P Define: Determine what the endpoint you are trying to reach Research: List the skills and tools you have and the ones you need to reach your endpoint Outline: Breakout the smallest actionable steps you can take to reach your endpoint Prioritize: Order your actionable steps into an order that allows you to build one on top of the other. What to do when a plan starts to fail Stop what you are doing, do not try to muscle through it. Ask questions, analyze and evaluate what is causing problems Develop a plan to resolve each problem. Listener Challenges Tell us about your methods for developing a plan. Share with us what tools and systems you use to implement your plans Previous episodes mentioned Establishing Office Connections To get more done as a developer you need a personal task management system. Why it is important that you maintain a healthy work/life balance. Leading by Example Using D.U.M.B goals and S.M.A.R.T goals to grow your development career.
Connections with coworkers is as beneficial to your career as your external network connections. How do you establish meaningful office connections? How do you bridge the gap between technical and non technical discussions? Once you have established a connection how do you maintain it? In this episode we answer these questions and others by looking at the value office connections provide. We discuss ways for you to seek opportunities for establishing internal connections. As well as, methods for keeping those connections alive. Providing you with an internal network you can depend on. Benefits of Office Connections Creates an internal support system Helps establish yourself as a subject expert Promotes cross team collaboration Establishing Office Connections Seek opportunities to start conversations Find a common ground Identify places where you can offer help & support Setup a recurring schedule Listener Challenges Seek out and create a new office connection Previous episodes mentioned Using D.U.M.B goals and S.M.A.R.T goals to grow your development career. Development Interview Situations Building Your Developer Network
Building a network of professionals is imperative to the growth of your development career. Where do you find the right professionals to connect with? When you do find them how do you start creating meaningful relationships? In this episode we focus on helping you answer those questions. Using past experiences we provide examples of how to find network building opportunities. We then outline tips you can use for starting meaningful conversations that help to build connections. The importance of networking You never know what opportunities it will bring Establishes a professional support community Allows you to be a mentor/leader to others Networking Opportunities Industry conferences Award ceremonies Random encounters Creating a meaningful connections Be proactive, do not wait for others to approach you Find a common ground to start a conversation from Show a genuine interest in the other person Do your best to leave a great impression Listener Challenges Let other listeners know, what tips do you have for building connections? Tell us, a positive outcome you experienced from a network connection? Links from this Episode The Ballmer Peak Rule of Reciprocity How to win friends and influence people* You can catch more flies with honey than vinegar SPI #240: Tips & Tricks to get the most out of conferences by Pat Flynn Previous episodes mentioned Development Interview Situations Using D.U.M.B goals and S.M.A.R.T goals to grow your development career * We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.
The skillsets you used to land your development job are useful well after the interview is over. In this episode we breakdown the lifecycle of an interview and highlight the many different interview type situations you experience as a developer. We explain each phase of the interview lifecycle and how to best prepare for it. Outlining actions to take and mindsets to apply to make sure it is a productive experience. In doing so, you will be able to represent the best of yourself in many other development situations. Before an interview situation: Do your research, learn who you are talking to and their motivations Prepare: relevant experiences, questions to ask Be prompt and ontime Take a big breath, calm your nerves During an interview situation: Types of questions you will be asked: specific, problem solving, open-ended Don’t answer questions until you have an answer. (pause and take a breath) Answer honestly. Always ask your own questions. After an interview situation: Always follow up and say thank you for the time. Keep the conversation going with actionable next steps No matter what, it is just the beginning of a relationship How to answer interview type questions Do not answer until you have an answer Ask questions until you understand what is being asked Be honest with your answer. If you don’t know, say you don’t know. Say only what you need to, avoid filler. Links from this episode Being Geek: The Software Developer's Career Handbook * Previous episodes mentioned The three key phrases you need to know to be a great developer Listener Challenges Tell us how do you represent the best of yourself in an interview situation as a developer? Share with us any relationships that have grown from an interview, share your stories. We want to know: what is a crazy interview question you’ve been asked? *We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.
To be a great developer, you need to promote greatness in others as well as yourself. In this episode we answer a question from listener Tom on how to lead by example. We talk about how setting a good example can benefit both your team and your own career. Using lessons we have learned ourselves, we highlight how any developer can be a good role model in the workplace. Benefits of leading by example for yourself Helps establish your authority in your development skills and capabilities Avoids presenting a double standard. Establishes trust and respect with others Benefits of leading by examples for your team Holds the whole team to higher standards Promotes team collaboration Promotes individual growth and learning How to lead by example Identify the change you want to see and why it is important Communicate and collaborate on your ideas with others Perform and demonstrate your ideas confidently. Lead by example by being a S.C.C.R player Supportive: Care for others and their progress Collaborative: Work with others towards a common goal Communicative: Listen more than you speak. Be honest and open. Reliable: Establish trust, respect and confidence, in your skills, abilities and team. Links from this Episode Command Line Challenge New Developing Up Stickers Listener Challenges Share with us your experience with setting a great development example Win a sticker, send us your ideas for epsiode topics
No developer starts out as an expert. The ability to ask for guidance rather than answers allows you to take ownership of advancing your career. It can be scary to ask for help, but we will provide suggestions for overcoming this fear. Using examples from our own careers, we outline what to do before you ask for help, how to phrase your questions and what to do after you receive help. Benefits of asking for help Prevents time-waste and avoids “re-inventing the wheel” Provides opportunities to gain knowledge from others. Helps give new perspective to problems you are stuck on. What to do before asking for help Try rubber ducking your problem out loud to no-one. See if you gain a new perspective. Timebox yourself to try new approaches, until you are not making any progress. Gain an understanding of where you are, where you need to be and what you have tried. How to ask for help Ask for guidance not for an answer. Explain what you are trying to do and what you have already tried. Be willing to work towards a solution together, do not hand off your problems. What to do after asking for help Say thank you! Provide public praise for those who helped you. Pay it forward and be a source of help for others. Links from this Episode XKCD: Stacksort O’Reily Copy & Paste from Stack Overflow Rubber duck debugging Peer programming Mikes rubber duck Other Episodes Mentioned Six ways you can be a more productive developer. To get more done as a developer you need a personal task management system. How to give and receive feedback Listener Challenges Reflect on a previous time you asked for help and what the result was. Next time you receive guidance or help, pay if forward and help someone else with the same type of problem. Tweet us a picture of your rubber duck!
You are going to make mistakes during your development career and that is normal! In this episode we discuss how making a mistake helps you improve as long as you approach the blunder with a learning mindset. We talk about why development mistakes happen, what to do when you make one and tips for how to avoid repeating the same mistakes. You're always going to make mistakes, so you might as well make new ones! Benefits of making mistakes Provide a learning experience Eliminates methods that do not work Identifies areas of “unknowns” How to avoid the same mistakes Calculate is a mistake is likely by reviewing risks and unknowns Avoid assumptions and clarify miscommunications by responding with “What I heard was...” Timebox new approaches to test if they are viable. What to do when you make mistakes Own it! Do not try and cover it up Apologize (if appropriate) and do not cast unwarranted blame Offer next steps for moving forward What to do when others make mistakes Provide encouragement and support Do not condemn, keep communication open to understand why it happened Reaffirm that everyone (even you) make mistakes Key Takeaways You are going to make mistakes, every developer does. Mistakes are not all negative, they can be positive learning experiences. Avoid mistakes by not making assumptions and communicating as much as possible. Never cover up mistakes. Apologize, own them and offer a way forward. Episode Links Blackbird Doughnuts The Benefits Οf A Mistake-Driven Learning Approach ** Listener Challenges** Can you tell us how pop-filters work? Email us at hello@developingup.com Tweet us your opinions about mega menus and carousels Next challenge you face ask yourself: do you have wiggle room to try something new? Let us know how you avoid making mistakes Let us know what steps you take after making a mistake Email us an example of a time you learned a valuable development lesson after making a mistake. Previous Episodes Mentioned Using D.U.M.B goals and S.M.A.R.T goals to grow your development career To get more done as a developer you need a personal task management system. The three key phrases you need to know to be a great developer.
Facing new career challenges as a developer is often uncomfortable. In today's episode we discuss the importance of getting comfortable with being uncomfortable. We examine the risks of staying comfortable and the trap of “good enough”. We then talk about uncomfortable situations you may face and how you can use them to grow and improve yourself. Risks of being comfortable Stagnation Lack of growth and the mindset of “good enough” Underchallenged burnout Benefits of being uncomfortable Forces new challenges Breaking past your limitations Setting yourself up to be a great example How to embracing being uncomfortable Face every situation with an “I will learn something” mindset Think about the worst case and best case scenarios. Embrace the best case. Motivate yourself by mentally reviewing past successes. Notes from this Episode: The Peter Principle Imposter Syndrome How to Tackle Your Inner Critic and Unleash Your ‘Badassery’ Listener Challenges: Challenge yourself to fail. See if you let yourself fail or not. Reflect on where you are in your career and what uncomfortable situations you overcame to get there. Previous Episodes mentioned: [How you identify, treat and prevent the three types of developer burn out] 4 The three key phrases you need to know to be a great developer
Feedback is crucial to career growth as a developer. In today’s episode we tackle feedback from both the perspective of the manager and that of the developer. Managers will learn to give constructive and useful feedback. Developers will learn how to productively use feedback to improve themselves. The benefits of feedback: Improved communication and collaboration Create learning opportunities for ways to improve Increase comfort with taking risks, resolving mistakes Improve confidence in abilities to tackle challenges and succeed. Tips for giving feedback: Give feedback in a positive and constructive manner Public praise, private criticism Give feedback unsolicited and often Tips for recieving feedback: All feedback is a learning experience Be proactive and ask for feedback Ask questions to gain a full understanding of feedback Notes from this Episode: How to Win Friends & Influence People by Dale Carnegie Listener Challenges: Tweet us shout out about someone on your team Give public positive, unsolicited feedback in the next 24hrs Ask for feedback from a co-worker/manager in the next 24hrs Previous Episodes mentioned: [The Importance of one-on-ones] 2
Great developers need great support, feedback and communication. In today's episode we talk about the importance of regular one-on-one meetings for both developers and managers. We discuss how managers can establish and maintain successful one-on-one meetings. We then discuss how as a developer you can take ownership of and benefit from these meetings. Three reasons for holding one-on-one meetings: To promote open communication To give and get feedback To establish a support system One-on-ones for Managers: Keep frequency regular Never cancel a one-on-one, unless you or developer is out Ask questions and let the developer lead the conversation One-on-ones for developers: Come prepared with talking points that are important to you Use the time to share feedback, ideas and frustrations Lead the conversation, the meeting is for you Notes from the Episode: Help them Grow or Watch them Go by Beverly Kaye and Julie Winkle Giulioni Managing Humans by Michael Lopp Notes to a software team lead by Roy Osherove Listener Challenges: Managers: Embrace the silence and allow the direct report to lead the meeting Developers: Think about and plan ahead for your next one-on-one bring a running list of items to talk about Previous Episodes Mentioned: The Four Attributes of a Great Development Team
To become a great developer you need the support of a great team. But what makes a development team great? In today's episode we discuss the four attributes of successful development teams. We talk about why each attribute matters and how they build trust and excellence. We also explain how you can foster these qualities within your own development team. The four attributes of a great development team: Communication Responsibility Positive attitudes Collaboration Notes from the Episode: Picture of Mike's Laptop Clean Coder by Robert C. Martin Taking People with You by David Novak How to Win Friends & Influence People by Dale Carnegie Previous Episodes mentioned: The three key phrases you need to know to be a great developer.
In episode six of the Developing Up podcast we talk about the three phrases you need to learn to say with confidence as a developer: "Yes", "No", and "I don't know". First we discuss why knowing these phrases is key to your development career. Then we dive into each one and outline how to say them with confidence. Finally we help you recognize when to say "yes", "no" or "I don’t know" by using scenarios from our own experiences. Three phrases great developers can say with confidence: Yes No I don't know Notes from this episode: "Yes and" Flexible Decision Terms and “Yes, if” by Johnathan Curtell I don’t know Previous episodes mentioned: How you identify, treat and prevent the three types of developer burnout.
In episode five of the Developing Up podcast we focus on six ways to be a productive developer. We first establish the benefits of productivity and how it impacts your career growth. We then touch on the important distinction between being productive and just being busy. Finally we share six productivity tips to use throughout your career. Six tips for being a productive developer: Be smart about your time and remove time waste Prioritize what you need to get done and focus on the MVP. Use goals and set milestones for yourself. Plan backwards, start with your end result. Be active in your progression and learn deliberately Remove distractions and enter the zone. Notes from this episode: Three things that you need to accomplish anything you want How to invest your time like money by Elizabeth Saunders DRY programming Deliberate Practice Previous episodes mentioned: Using D.U.M.B goals and S.M.A.R.T goals to grow your development career To get more done as a developer you need a personal task management system
In episode four of the Developing Up podcast we discuss the importance of balancing work, home and everything in between. We talk about what work/life balance means and what aspects of your life it covers. We dive into ways that we maintain a healthy balance between work and home/everything else. Finally, we outline ways to identify imbalances in your time and priorities and how to fix them. Notes from this episode: Work/life balance 5 Benefits of exercise Previous episodes mentioned: Using D.U.M.B goals and S.M.A.R.T goals to grow your development career To get more done as a developer you need a personal task management system How you identify, treat and prevent the three types of developer burn out
In episode three of the Developing Up podcast we explore the dangers of developer burnout. We discuss what burnout is and the various types that developers may experience. We then break down the signs to help you recognize burnout in yourself and others. Finally, we talk about how to deal with burnout and what you can prevent it. Notes from this episode: The three types of burn out Rubber Duck Debugging Mindtools burnout quiz Previous episodes mentioned: Using D.U.M.B goals and S.M.A.R.T goals to grow your development career To get more done as a developer you need a personal task management system
In episode two of the Developing Up podcast we cover task management. We discuss the importance of establishing a personal task management system. We then outline the key concepts and methodologies of many systems that we have found helpful ourselves. Finally we discuss the systems we use and how you can build one that works for you. Notes from this Episode: Omnifocus Wunderlist Getting Things Done Pomodoro Technique Personal Kanban Previous episodes mentioned: Using D.U.M.B goals and S.M.A.R.T goals to grow your development career.
In the first episode of the Developing Up podcast we talk about goals and goal writing systems. We discuss why goals matter for personal and career growth. We then take a deep look at how you can create and write goals using specific goal writing systems. Finally we discuss ways to succeed in your goals. Notes from this episode: S.M.A.R.T Goals D.U.M.B Goals Why SMART goals are Lame by Brendon Buchard Your Best Year 2016: Productivity Workbook and Creative Business Planner by Lisa Jacobs