Refactor logo

Refactor SE

Methodically strengthen your core set of software engineering skills and achieve a promotion

Refactor SE is our most effective coaching program we’ve created to date. It’s designed for software engineers with 3 or more years of professional development experience who are looking for a way to identify their weakest software engineering skills and sharpen their skill development journey to achieve a meaningful promotion (e.g. to mid-level software engineering, senior software engineer or team lead).

It builds on Jim’s first generation coaching programs and unifies them into a single software engineering coaching and mentorship program focused on career development and progression. Instead of wondering which program is the best fit for you, there’s now one that brings the most popular and effective parts of the old programs together. Through these programs, Jim has helped multiple engineers achieve promotions and raises that range between $10k - 75k.

Now you can focus squarely on strengthening the right engineering skills to grow into the promotion you want, take on a new and exciting role, and experience a lot more personal satisfaction in developing software.

Scroll down for detailed information on exactly the problems and the outcomes you can expect from each part of the program.

Get started with the Refactor SE program by booking your first Part 1 session!

Refactor Coaching Newsletter

Get software engineering career insights inspired by our work with engineers

Refactor logo

Easy ways to learn more about the Refactor SE program and get your questions answered before deciding to sign up


We achieve this through a 3-part coaching and mentorship program designed to upgrade your core software engineering skills and enable your promotion as a key outcome

P1: Identify your engineering strengths, weaknesses and set your 12-month career objective(s)

We coach you through clearly articulating what you want to achieve by working towards a promotion - uncover your primary objective behind wanting a promotion.

We’ll identify the most impactful engineering skills to focus on strengthening, laying the foundation and setting a baseline for you to actually achieve a promotion.

By the end of Part 1 you should be able to:

  • Articulate more concretely what you want to be true in your software career that you hope your promotion will enable you to achieve.

  • This begins by taking a comprehensive engineering skills assessment, which provides you a list of your most impactful skills to strengthen.

    Our coaching sessions will be sure that you understand the results of the assessment.

  • You’ll know what makes the most sense to work on next to achieve your promotion and you’ll also understand the logic behind it.

    That may include moving on to Part 2 of the program, or taking your action plan to proceed on your own.

  • This is a key foundational part of becoming a next-level engineer. It seems deceptively straightforward to do, but what we’ve found from coaching many engineers - this can be quite challenging to articulate what you actually want to achieve in your career and then identifying the most relevant skill areas to focus on improving in order to achieve it. This is exactly what we’ll work on accomplishing together in this first part of the program.

    We use our comprehensive self-assessment and 2 coaching sessions so that you come away with two valuable things:

    1. A clear articulation of what you hope to be true once you become a senior engineer (go beyond the title and the promotion - what exactly are you working towards for yourself in your career?)

    2. A list of the most impactful engineering skills for you to focus on improving to become a senior engineer

    With these two things in hand, you’re ready to work on improving three foundational skills in Part 2: prioritizing where to put your focus, effectively managing your time and creating an agreement with your manager.

    Or, if this provides you what you currently need, you can take your action plan and move forward on your own. You can always sign up for Part 2 or 3 of this program when you know that they will make the difference in achieving a promotion and improving your engineering skills.

  • Get them answered by clicking the Learn More button below.

    Also be sure to check out the FAQ later on this page as it may answer your question.

P2: Create a foundation for growing into your promotion

Significantly improve your ability to focus your attention, prioritize your actions, and effectively structure your time to achieve better results in your daily engineering work.

You’ll also learn how to co-create an agreement with your manager to map out the steps to your promotion with a significant raise.

By the end of Part 2 you should be able to:

  • We discuss and begin practicing setting clear objectives and outcomes for yourself.

    What do you want for yourself?

    How do you translate your wants into clearly-stated outcomes?

    How can you articulate a long term vision and break it down into smaller, clear achievable actions?

  • You have a lot of things you’d like to learn about and achieve in your career.

    What does it look like to prioritize these things?

    What’s so powerful about setting constraints for myself in actually achieving my objectives and outcomes?

  • We work together along with your manager to craft a promotion plan that is clear, actionable and has agreement from both your manager and you.

    A key outcome here is for you to have a concrete plan that defines some key ways your manager wants you to grow and contribute to key team objectives.

    This plan will be beneficial to both people. For example, you should be contributing in new and direct ways towards your team’s objectives. You’ll also be strengthening your engineering skills resulting in your promotion in a reasonable time frame.

  • Stop feeling overwhelmed through the use of a short and realistic list of tasks each day.

    Time blocks help you stay organized and focused on your actions, which significantly reduces distractions and improves your productivity.

    This increases the likelihood of achieving your outcomes one at a time.

  • This is an underrated and critical soft skill to practice and to become proficient in.

    We’ll discuss why it’s important to keep your manager updated on your promotion plan progress, what it means to keep them updated and some bonus outcomes that come along for free just by starting this practice.

    You’ll be able to have one-on-ones with your manager with a new feeling of personal confidence.

  • We’ll strengthen key foundational soft skills first: your ability to clearly articulate your objectives, determine the most important first step to take, how to organize your time into focus blocks, and the power of remaining focused until you’ve reached your desired outcome.

    You’ll read through the powerful book The One Thing as a companion guide to your coaching sessions.

    These soft skills unlock your ability to do your best engineering work and is why we refer to them as foundational. Spending time to understand and practice them is crucial to growing your engineering skills and achieving your promotion. They’ll also carry you through anything else you’d like to achieve in your career.

    We’ll coach you through co-creating a promotion plan with your manager. This includes helping you create a first proposal composed of your most impactful engineering skills to improve on which you identified in Part 1.

    Our objective is to have a very clear promotion plan in place that you and your manager agree on. Your plan will be very clear on what engineering skills to strengthen, by how much and over what time period (typically between 6 - 12 months). We’ll coach and support you through this entire process.

    Lastly, we’ll discuss the importance of regularly updating your manager on the specifics of your growth journey and we’ll coach you through how to do this effectively.

    Doing this on your own is challenging. Part 2 serves to take much of the guesswork out of growing into and achieving a promotion.

    We recommend moving on to Part 3 of the program, however, like Part 1, this is optional. When you’re ready to proceed you can sign up for Part 3.

  • Get them answered by clicking the Learn More button below.

    Also be sure to check out the FAQ later on this page as it may answer your question.

P3: Achieve growth and your promotion with intensive hands-on practice

We work on strengthening your core engineering skills with targeted hands-on software engineering exercises, just like a serious athlete does with a coach.

You’ll develop and practice the specific skills and actions in alignment with your promotion plan from Part 2.

As alternative to targeted exercises, this can be software project-based where we guide you in creating an entire open source project (or join an existing one) from ideation to deployment. Not only does this provide you with practice of specific skills, it also gives you something meaningful for your career portfolio as a demonstration of your new level of development experience. Show it off to your current or future manager during an interview!

We don’t dictate the language or tech stack for you to practice with - bring the ones most relevant for your desired career path.

By the end of Part 3 you should be able to:

  • We’ll guide you in how to choose your next most impactful skill from your promotion plan to work on strengthening.

  • Being able to break apart a complex engineering skill into its constituent parts is a critical skill to become good at.

    You’ll learn how to move beyond a superficial understanding of the engineering skill you’ve chosen to strengthen.

    We’ll keep work on doing this together until you can intuitively do this yourself.

  • We’ll create a plan for strengthening each skill, one at a time.

    We’ll articulate the outcome for practicing each skill, so you know when to move on to the next one.

    We have many existing exercises that you can work through, and it’s also encouraged to tailor them to suit your specific needs.

    This demonstrates a key difference between taking a class vs. working with a coach. Working with your coach takes you beyond a one-size-fits-all approach which is more effective for strengthening each skill.

  • You’ll be able to estimate the time you think you need to spend strengthening each skill.

    Engineers are asked frequently to provide estimates for various development activities and tasks. Here is an opportunity to practice getting better at doing this.

  • This is perhaps the most important step in Part 3 - your commitment to follow through on the practice necessary to reach your growth outcomes.

    For some, this is straightforward, but for others, this is very challenging. No matter if it’s straightforward or challenging for you, you’ll see growth only as long as you show up and remain committed to your objectives.

    When you need assistance with an exercise, your coach is available to go hands-on and pair with you. Our objective is to build the confidence you have in yourself that you can get through many different kinds of engineering challenges.

  • Earlier in Part 3, we defined a clear outcome for practicing the skill you chose to strengthen. Being able to know that you’ve achieved your growth objective is a skill that we’ll further develop in you.

    This is an important and often skipped step by engineers. Often, it results in losing your motivation to continue practicing a skill because the desired objectives and outcomes are not well-defined which can result in feeling lost and ineffective.

  • The third part of this program is a methodical and iterative process that focusses on strengthening your engineering skills. Here, we deepen each skill to achieve your overarching goal that we set in Part 1.

    We put into practice the foundational skills laid by the previous parts two parts of the program.

    You’ll read tcompanion interviewhrough the book Slow Productivity to prime your mind to deeply practice one engineering skill at a time (companion interview of the author on the concept of slow productivity).

    Similar to athletic training, we'll recommend specific software engineering exercises to develop one skill area at a time. These focus on the skills identified in Part 2 and the promotion plan you co-created with your manager.

    Some possible exercise areas include: understand software requirements better, write better pseudo code, practice advanced programming language concepts, write effective software design documents, improve your ability to explain software architectures in plain English, keeping up with advancements in AI programming tools, using AI tools effectively, write smaller and more testable units of code, and learn how to give impactful code reviews, among many others.

    During this stage, you'll also practice your soft engineering skills such as verbal and written communication, goal articulation, prioritization, and efficient time management through the use of time blocks.

    Note that all exercise outputs will be committed to a GitHub repository that you own. You can choose to share this publicly as part of your portfolio or keep it private and share it with your manager to showcase your growth and development.

  • Get them answered by clicking the Learn More button below.

    Also be sure to check out the FAQ later on this page as it may answer your question.

Who is this program for?

You’re a great fit for this program if you’re an engineer who already is 3 or more years into your software career regularly works with at least one tech stack which includes a programming language, common libraries and frameworks that you prefer to continue working with.

You have a strong desire and openness to identify and strengthen your weakest engineering skills by committing to work through a specific practice plan. Commonly, we engineers feel that we can accomplish everything ourselves without partnering and learning alongside other experienced engineers. This program is for engineers who realize that this is a severely limiting belief that is holding them back from achieving their promotion.

This program is not the same as an educational course which tends to feed information and has you regurgitate the “right answers.” The answers that you’re looking for your engineering career advancement are already within yourself. The work we’ll do together in this program seek to uncover and articulate them.

If you’re looking for someone to tell you what they think are all the right answers for you, then this program won’t be much help to you.

Financial investment

Part 1 - $300:

  • We coach you to clearly articulate what you want to achieve by working towards a promotion - uncover your primary objective behind wanting a promotion.

  • We’ll identify your most impactful engineering skills to focus on strengthening with a thorough skills assessment, which lays the foundation and sets a baseline for you to actually achieve a promotion.

Part 2 - $500:

  • Significantly improve your ability to focus your attention, prioritize your actions, and effectively structure your time to achieve better results in your daily engineering work.

  • You’ll also learn how to co-create an agreement with your manager to map out the steps to your promotion with a significant raise.

Part 3 - variable (see options below for more details):

  • We’ll work on strengthening your core engineering skills with targeted hands-on software engineering exercises, just like a serious athlete does with a coach.

  • You’ll develop and practice the specific skills and actions in alignment with your promotion plan from Part 2.

For Part 3, you purchase packs of live coaching session credits giving you options to engage in just the right amount of coaching that aligns with your current needs and budget.

Current Part 3 coaching session pack options:

  • 4 live coaching sessions: $995

  • 8 live coaching sessions: $1895

  • 12 live coaching sessions: $2795

For over 2 years we’ve coached and mentored a diverse group of software engineers. We’ve found that our coaching work almost always more than pays for itself. How does this happen? By setting a primary objective of our work to be you receiving a raise. When you work on intentionally strengthening your engineering skills, achieving a raise becomes a natural* outcome of doing this work. We’ve helped clients achieve raises most commonly between $10k - 75k**.

Reimbursement of your financial investment

One helpful topic to discuss with your manager or HR professional is if your company is willing to cover part or all of your financial investment in coaching. Increasingly, companies have a specific Development & Learning budget set aside to support engineers in their developing their career.

Even if your’s does not, it’s still worth discussing with your manager if your company is willing to support your development in this way.

*An important note about raises: the times when a client hasn’t achieved a raise are usually when a client works at a company or on a team that isn’t in a financial position to promote them or commit to giving them a pay raise. Make sure to discuss this with your manager while discussing your promotion plan so that you can calibrate your own expectations ahead of time.

**Also note that these figures are for US software engineers. The specific size of raises for engineers who work in other countries will vary.

Logistical details

Each part of this program is designed to build on the previous one. However, each one is also designed so that you don’t have to do the entire program all at once if doing so doesn’t fit your current needs or budget. You can proceed to the next Part in the program when you’re ready.

The number of sessions in each part of the program:

  • 2 sessions in Part 1

  • 4 sessions in Part 2

  • A variable number of sessions in Part 3 determined by how many major engineering skill areas you decide to work on

Live coaching sessions

Each session is a live 55 minute virtual 1:1 with a highly experienced software engineering coach. You’re encouraged to go at the pace that works best for you (i.e. you will self-schedule each session).

For example, if you want one or two sessions during the same week with a two week gap in between a third session, you get to decide. We only ask that you book at least 2 sessions per month so you keep moving forward with the momentum and accountability that meeting with your coach provides to you.

In between live sessions

You also have access to your coach outside of your live 1:1 sessions over private Slack messaging and email, which enables you to receive support and move forward in between sessions as new thoughts, challenges and questions come up.

Next steps

If you’ve already decided that you want to begin working with one of our software engineering coaches, your next step is to sign up for Part 1. We’ll ask you for some helpful background information about yourself and your software career.

If you have any questions that aren’t addressed here, make sure to check out the FAQ below. You’re also encouraged to send us your questions or book a free intro coaching session.

We look forward to meeting you and partnering with help you grow and advance in your software engineering career! 👋 🤝

And one final thought…our coaching isn’t right for every software engineer, but if you feel energized after learning about our coaching program, know that it’s an empowering gift to give yourself to forever change the trajectory of your software career. 🚀

Refactor logo

Easy ways to learn more about the Refactor SE program and get your questions answered before deciding to sign up


FAQs

  • Software Engineer

  • You first need to determine if this has to do with your manager’s limitations directly or limitations with your company’s promotion policies. If it only has to do with your manager’s limitations, consider if this is a short term limitation or a long term one. And if long term, you’re strongest course of action will be to get onto a different team with a new manager who’s in a better position to co-create a promotion plan for you.

    If this is due to a limitation of your company’s promotion policies (e.g. an under-defined career path for engineers or an unwillingness to be transparent about promotion plans), you’re strongest course of action will be to consider whether being promoted in a transparent manner is important enough to you. If it is very important, we encourage you to begin searching for a new company to join instead of fighting your current company’s policies.

    You may also decide that you’re willing to “risk” not having clear agreement with your manager and continue forward with the plan you and your coach create together. You can still get affirmation that you’re on track to a promotion by asking the right questions to your manager and team lead along the way.

  • This is one of the main reasons the program is broken up into 3 Parts. By doing this, our intention is to make it easier to get started with Part 1 and 2 at more accessible price points.

    Part 3 is structured in a way to enable you to invest as you’re able to with coaching credits. You can start with the amount that you’re currently able to afford and then see how far this takes you in your practice plan.

    You’re always able to pick right back up where you left off with your coach once you want to continue and feel comfortable making a further investment in yourself.

  • Yes you can. We can modify some of the key objectives for Part 2 to prepare you to land a best-fit role at a new company different from your current one.

    We can swap out creating a promotion plan with your manager with creating an interview plan. Note that this is similar to our previous and most popular coaching program From a Frustrating Role to a Fulfilling One.

    Depending on the skills we determine will help you the most for interviewing well, we’ll also change Part 3 to focus on strengthening these skills so that you are prepared to land an exciting new role.

    We will also discuss onboarding well into your role at the new company including what skills are most impactful ones to strengthen.

  • Not anymore and we believe that there’s really no need to.

    Refactor SE is specifically designed to incorporate the most impactful and popular aspects of our first generation programs. Some of these things include: learn to clearly state your career goals and how to best achieve them, how to focus on the right priorities first and achieve them, greatly improve your approach to managing your time well, support to achieve a promotion + compensation raise, and hands-on software development upskilling based on targeted exercises or an open source software project.

  • Absolutely. Our coaches are currently located in the United States and can easily accommodate most time zones for scheduling live sessions.

    If you’re currently somewhere in eastern Asia, Australia or New Zealand, we are happy to create a live session schedule that works well for both you and your coach.

  • Absolutely. Going through this program can help make a significant impact on your software engineering skillset while you interview and work on landing a new best-fit software engineering role.

    If you’re currently unable to financially afford investing in yourself by investing in this program, then please refer to the FAQ question that addresses “What if I’m currently unable to afford the Refactor SE program investment?”