How to become a Software Developer – Branding

Branding might be the last thing that a developer wants to do.  We just want to code, right?  You probably don’t see yourself getting out there as some type of personality in the programming world especially as you’re just getting started.  I’ve had my struggles and doubts in wondering if I’m worthy of blogging or talking about development to people.  You have to remember that we’ve all got something to say to someone, whether it’s another developer that’s struggling with mindset or some concept or a prospective employer/client looking for your unique skill set.

The thing is that you don’t have to be seen as some guru, although you can if you want, but simply a person with something to offer to the world.  What can you help somebody with?  As developers, we have the ability to solve many challenges for individuals and companies in unique ways.  Even if you’re learning there’s value in showing others what you’re learning so that they can go on the journey with you and get inspired by your action.  Putting yourself out there will elevate your efforts in multiple ways providing accountability to the world, even if it’s just a few people reading your blog, and incentive to be better technically so that you can pass your knowledge along to make others better in turn.

Your Super Power

So how do you want to convey your abilities to the world?  What is your super power?  This is where developing your identity or brand as a software developer comes into play.  You have to determine what you want to communicate with clarity first.  If you’ve been reading the “How to become a Software Developer” series then you should have a decent idea of what you want to offer.  If you haven’t read the series then go back and do it!  There are many ways to get your name out there so that people and organizations will come to you instead of the other way around.  You need to be strategic about how you’re presenting yourself so choose wisely and be intentional with your brand and messaging.

Keep in mind that you don’t have to have your super power yet but you could be aiming to get there.  You have to deliver on your promises or expectations but it’s okay to be working towards your goal as you’re helping others.   Depending on your audience they’ll appreciate that you’re candidly learning as they are and working towards the same kinds of goals but maybe just a few steps ahead.  It’s okay that you don’t know everything.  Who really does right?  The important thing is that you’re being honest and delivering.

Clarity

The most important aspect of your brand is clarity, you’ve got to become clear on what it is that you do and why you’re the best at it.  Come up with a one-liner statement or tagline to help with this that’s easy to remember.  Something along the lines of “I help ______ to _______ so that they can _________”  for example “I help companies build cross platform mobile applications so that their app can be run on more devices and reach more customers.  To take this another step come up with an elevator pitch which is a bit longer but goes into a little more detail.  You could expand little further to include how you build an app maybe mentioning the languages that you specialize in or something a little more technical.  Be careful to not make the statements complex as you want non-programmer people to understand them.  They’ll be other times to get into the details with more technical folks.

Consistency

Once you’ve crafted your message and become clear about what you’re going to offer then you’ve got to be consistent about getting it out there.  Think about how you best communicate whether it’s through writing or speaking.  If you’re comfortable at both then great, you’ve got more options.  I’d say at least once per week is good but as often as possible.  Get out there by writing blog posts, recording videos, helping in forums, and posting sample code.  Without a following of some kind you don’t have a brand.  Develop your brand through a clear and consistent message.

Branding or Marketing Channels

Social Media

This is probably the easiest way to start, by building an online presence through sites like LinkedIn or Twitter.  It’s likely that you’ve already got profiles on social media.  Do you feel that those represent you and give the best picture of what you can offer?  Be sure to tailor those to your newly minted brand and put some focus on one at a time to grow your following intentionally.

Blogging

Starting a blog and building your portfolio site is still the best way to establish your brand as a software developer.  Your own blog gives you control whereas other platforms, such as social media, could change the game suddenly limiting your potential and impact.  You can make your blog your own space showcasing your skills and crafting the perfect message for your intended audience.  There’s a wealth of information floating around about creating a blog.  The quickest way and probably the best, especially in the beginning, is to to use WordPress with some lower-end shared hosting that has the ability to scale if needed.  If you just want to start getting some stuff out there then Medium may be a good option as I see the site come up quite often in searches for development related content.

YouTube

If you don’t mind hopping on camera or just doing some screen recordings then you could develop a following on YouTube as well.  This is an area that I haven’t ventured into, mainly due to perfection and fear of getting on camera.  As I don’t see too many developers with ‘hot’ YouTube channels this could be a prime place to gain some traction with your brand.  Google owns/likes YouTube so from an SEO perspective putting some effort here could pay off.

 Forums

Find some forums or community sites where you can contribute such as StackOverflow, Quora, or Reddit.  A dedicated community site where you can become known and helpful among a group is a good place to develop some of your identity as well.  I’m a member over at Simple Programmer.  Being part of a group of developers with similar goals is motivating and it’s a great place to find help with career related questions.  Gaining credibility and trust among a group of like-minded people can help you level up and get better through a degree of accountability.

Meetups & In-Person Events

It’s easy to forget about the old fashion way of ‘brand’ building which is meeting people in person.  Look for local meetups to attend where you may be able to offer value.  These could be more general meetups to ones more specific to the language(s) that you use.  Meetup.com and EventBrite.com are a couple of top-of-mind sites where you can look.  Conferences are a great opportunity as well if you go with a purpose and not just to pick up some swag.

Conclusion

So to summarize, do the following to kick-start your brand.

  1. Create your tagline and elevator pitch.
  2. Determine at least 1 channel where you’ll initially focus and put your effort there.
  3. Decide how often you’re going to publish content.The best time to get started is now.Remember that there are people out there looking for you and what you have to offer.  Come up with your plan and start executing!

How to become a Software Developer – Define Your Dream Job

Your Dream

You have to see what you’re moving into before you go there.  It’s okay to dream and if you’re serious about realizing your dream then you have to turn it into a goal where you can apply some action.  This probably isn’t something that’s going to fall into your lap without some preparation and hard work.  This post is another in the How to become a Software Developer series and is going to help you define your Software Developer dream job.  It’s an exercise to help you decide with as much accuracy as possible on what your ideal job is going to look like so that you can fine tune your efforts.

Dream Job Aspects

I’m going to cover several aspects that you’ll need to nail down before going after your Software Developer dream job.  After reading through them you’ll think, well all of that was obvious, but hopefully this will help you to solidify your goal and give you a great foundation to build on.

Specialization

If you’ve read the previous posts in this series then you’ve already thought a good deal about the type of development you’ll be doing, if you’re not already doing it in some capacity.  You’ve got to get specific about the language(s) you want to work with.  Specialization is important when increasing your value as a developer.  Some places may want a generalist but you’ll be better off getting better in one language or area, especially starting out.

Location

Where do you want to do your dream job?  Do you see yourself going to a nice office building where you can collaborate with your peers face-to-face?  Or do you see yourself working from home or maybe a local coffee shop every now and again?  Do you want a job close to where you live now or do you want to relocate to a cool city?

Think about the location in detail and list pros/cons.  What is appealing about it?  What is not so appealing?  Maybe your an outdoors person and would like to have easy access to hiking or biking.  It could be that the city life is for you with all of its convenience and night-life.  Don’t only choose the are because of good pay but consider your quality of life if you were to move there.

It could be that you’re considering a work from home position.  Do you thrive when working alone and need minimal supervision?  Or will you really do better seeing your teammates in person?  If you have any doubts about it then see if you can try it out in some capacity, maybe do it part time to start with to make sure that it’s going to work out.  Remember the old saying that the grass is not always greener on the other side.  It could be that that grass is greener because its got a bunch of fresh manure on it!

Pay and Benefits

Whether we admit it or not we all want to make more money, right?  But as you know, mo money mo problems.  Well, maybe not but there is typically more pressure and responsibility with increased pay.  Ensure that your expectations are in line with the position that you’re going for.

You need to set a target salary before going for your new position.  Do your research and determine your value.  What do you bring to the table that makes you valuable?  List your technical (programming languages, tools, etc.) as well as soft skills (traits that make you a desirable person to work with and be around in general).  

What additional benefits are must-haves and icing on the cake?

  • Health Insurance (Medial, Dental, & Vision)
  • Vacation
  • Retirement
  • Stock
  • Training
  • Allowances for items such as internet, cell phone, and so forth.

Get all of these items lined out before you get going.  You have to take control here and be sure of what you want.  It never hurts to ask right?  Most likely there will be some give or negotiation especially when it comes to vacation days.

Your Ideal Team

What are you like and what are the types of people you’d like to be around, maybe virtually, for at least a third of your day?  You may rather work on a small versatile team or maybe it’s a larger team having more specialized members that you’d prefer.

Given your chosen development niche or path will play into the type of team you’ll likely be a better fit for.  For example, if you’re a Full Stack Developer then you’re able to work in different areas of the stack so the team may be less specialized.  If you’re a dedicated web developer then that could indicate that the team is more specialized meaning you may work better in such an environment.

Your Ideal Company

Company culture plays a big role in job characteristics for developers.  How progressive is the company?  Is it a startup or well established with a rich history?  Do you want to a be ‘just a number’ in the company or possibly work along with the CEO to take the company to the next level technologically?

Get a strategy down around researching (https://www.themuse.com/advice/the-ultimate-guide-to-researching-a-company-preinterview) your prospective companies.  Knowing someone that works there helps but if that’s not the case then you may be able to connect with them on LinkedIn or Twitter.  If you really want to work somewhere then it’s worth knowing as many facts as possible around what you’re getting into.

Your Own Thing

Doing your own thing may be the most appealing option!  Most of us, including non-developers, would love to be able to set our own hours and have increased earning ability, gaining the freedom of being our own boss.  This all comes with the risk and task of finding consistent and profitable work along with finding affordable and effective health insurance.  If you’re young and single with minimal risk then this may be a better and more intriguing route for you.  Perhaps you’re married and your spouse has a killer job with all of the perks.

Conclusion

Hopefully this post has helped you to define your dream job and will help you turn you dream into reality.  All of the posts in this series are ultimately for helping you to put the pieces together to achieve your career goals as a Software Developer.

How to become a Software Developer – Find a Mentor

It can be lonely as a new developer.  In those times when you’re feeling uncertain about your direction or if you even have what it takes you need someone to encourage you and help to move you forward.  We’ve got to surround ourselves with others that have an interest in lifting us up and moving us along.  Friends and family, even co-workers, may or may not be helpful.  You need to find someone that understands your position and can help you take your next steps with clarity, boldness, and confidence.

What is a mentor?

  • Coach – A mentor is someone that can pick you up and encourage you when you need it.  You need a mentor that will tell you the truth when you’re not doing something right or falling short in an area.  You won’t get any better if they’re not being truthful with you.  
  • Guide – A mentor has already been down the path that you’re starting.   A mentor should have wisdom, not just knowledge around the subject.  This means that they’ve applied what you’re trying to learn, have made mistakes, and will try to keep you from making them.  They should be able to help you determine your next steps with confidence.
  • Trainer – They understand the skills needed and know how to monitor your progress.  A mentor should know when you need more work in an area and be able to gauge when you can move one.  They are there to help you increase your performance and push you to the next level.

The Benefits of having a Software Development Mentor

  • Accountability
  • Guidance
  • Encouragement
  • Challenge
  • Focus

Is it better to already know my mentor?

It could be that you already know someone that might be a good mentor.  Do you respect this person?  Can you be accountable to them?  Sometimes, if it’s a friend, they might be easier on us versus someone that we don’t know.  You want your mentor to have a tough attitude along with dedication to seeing you succeed.

How can I find a Software Development mentor?

In the virtual world we’re in remote work is encouraged so it’s a little harder to build working relationships.  You may not have the option to see someone at work often.

A few sites come to mind when it comes to online resources.

  • Online Memberships/Communities – For example, Simple Programmer has launched a membership site to go along with their excellent content.  The membership is growing and would be a good place to get involved with those having similar goals and a plus is that you could find a mentor there.
  • CodeMentor.io – Code Mentor is dedicated, as the name suggests, to providing Software Development mentors.
  • Coach.me – This is one that I’ve come across before and should provide options, although it’s more a general site.  There are a good number of coaches on there specializing in Software Development.

There’s the old fashioned face-to-face method of finding a mentor as well.  Find a local programming meetup and get involved.  The more that you get involved the more connections you make and that gives you a better chance at finding a mentor.

What’s so special about a coding or Software Development mentor?

You could find a coach with no or little development experience but an effective mentor is going to have the development experience and wisdom around the market.  You’ll want to find somebody that has at least had a software development career but the best case would be that they’re currently coding or maybe leading a team of coders.

Here are a few benefits of finding a mentor specializing in Software Development:

  • They can help you choose a ‘stack’ if they’ve got coding experience that is varied or been involved with several languages.
  • They’ll know about working with software teams and the dynamics involved.  
  • Can see how you might fit in based on personality after learning a little about you.
  • Help you identify specific areas that you need to work on along with strength areas that will give you a competitive advantage.
  • If you’re just starting, which is an awesome place to be, can gauge your aptitude for coding and help you determine where to start (what language might be best to focus on).
  • Can help you determine if you’re a good fit for a remote position.
  • May be able to help you through a specific technical topic that you’re struggling with.

The idea is that they’ve been down the path that you’re trying to make your way down or up depending on how you see it. 

Conclusion

A mentor is not only needed while you’re starting but throughout your career.  No matter our experience level there’s always someone who knows more and has more experience.   You’ll likely have several mentors as well given your maturity and skill level among other factors.

Do whatever you can to find a mentor suitable to your needs.  Make sure that the person can coach, guide, and train you as discussed earlier in this post.  Make it a goal to become a mentor, at least in some capacity, as it will make you a better developer and person in general.

 

 

How to become a Software Developer – Gaining Experience

How to gain experience as a Software Developer

So you’re thinking about how in the world you’ll find your first programming gig with no experience.  It’s unlikely that you’ll get hired with no experience but there are creative ways that you can gain plenty of experience and become a worthy candidate without doing it the traditional way, getting your foot in somehow and working your way up.  Maybe you could find your dream company and take any position even if it’s cleaning the toilets in hopes of moving into the IT department and eventually a development position.  This post however is going to cover some of the many ways that you can fast-track, to some degree, your experience and have fun doing so.

Find an Internship

I got my first development experience through an internship or co-op before graduating with my Bachelors.  I don’t know if can really call it development though as for most of the summer, I mapped a bunch of Access databases and Excel spreadsheets, no programming at all but a valuable experience nonetheless.  Hopefully someone came along later and moved those into a better solution using the diagram that I created.  All that really mattered to me is that I could be ‘Software Engineering Intern’ or something along those lines on my resume to go along with my degree.

An internship was, for me, the way to gain precious experience and have more than academic stuff on the resume.  For college students it still is a relevant and popular way to gain experience while going to school but things have changed quite a bit since I was in college.  The options are there now to start gaining experience and building your portfolio right away.

Speaking of College

This internet thing, and the ease of getting yourself ‘out there’, has opened up or maybe I should say created many doors that weren’t there 10+ years ago.  With technology, a lot of the curriculum, is going to become dated quickly.  I will continue to use a good amount of what I learned but, especially today, could’ve used other resources to get into a software development career.   I primarily work with C# today and it definitely wasn’t mainstream or used in any of my courses, .NET was in its infancy around the time that I got my degree.  All of my C# skill set has been learned on the job.  I can say that I really didn’t get a grasp on things until I started programming frequently.

If you’re in college or planning to go then use all of the resources and networking available to gain experience and get your foot in the door with companies.  Using your institution’s resources and name will give you an advantage or at least more tools than you’d have otherwise.  The networking, especially with career planning services, helped me big time to land my first job from helping me with my resume to getting interviews for me.

My biggest advice is to learn something because you’re interested, not only for getting a degree with the hopes of making money.  There are many examples of people with non-programming or non-technical degrees that are awesome developers.  Having a unrelated degree will work to your advantage down the road giving you additional skills to leverage.

You can start being a developer when you decide that you want to be one.

No Degree? No Problem!

You don’t need a degree at all to become a software developer.  Most companies don’t require a degree nowadays, at least from what I see, it is becoming less common for employers to have it as a requirement.  They want someone who can come in and get the job done.  A degree doesn’t prove that you can program!  You can start being a developer when you decide that you want to be one.   Use your interest and passion to create things to drive you forward.  Show off what you’ve created and build an impressive portfolio.

Create a Portfolio Site

Make your skills and personality public with your own website.  Go ahead and start working on this now.  At the least, this is simply your online version of your resume but you should put more into it such as blogging about programming and showing others, by example, what you’ve learned.

Some benefits of a portfolio site are as follows.

  1. Exposure – Your site is public.  You can direct people there easily and it’s visible for anyone to find.
  2. It’s Yours –  You can make it your own and customize it to give the best picture of YO.  You don’t have to play by the rules on job sites.
  3. It’s better than the traditional resume.  
  4. Positioning – You can present yourself as an expert in your area of choice.
  5. It could be a revenue source.  It could be more than a lead for landing jobs, you could even sell your knowledge or a product from your site.

Your site documents what you’ve been working on and puts you in the driver’s seat.    It shows who you are and how you can benefit those in need of your unique skill set and personality.

Get on Social Media and other Sites

You’ve got to get active in places where you can get noticed.  People probably won’t find your site via Google unless you’ve been blogging for a while.  Below are some popular sites where you should have a presence.  Pick your top 2 or 3 and spend some time building relationships, answering questions, and asking in those places.   

GitHub – Source control your code and share with others.
LinkedIn – The professional networking site.
Twitter – Many developers use Twitter as their primary social media outlet.
Reddit – Find some subreddits and contribute.
Stack Overflow – Help others out here and make a name for yourself.
Medium – You can post articles here and probably get more exposure than you would on your blog.
Quora – Another Q&A forum but with good potential to get eyeballs on your site.

Don’t make any of these your home.  The idea is that all of your good stuff is on your site and these places get people there to learn more about you, eventually like you and hopefully trust you.

Volunteer Your Skills

There might be a non-profit that could use some help with their website or internal systems.  This could be your home church.  Maybe they don’t have a website or could use some help with it.  Surely, they have some need from your development skills.  If there’s a cause or organization that you connect with then reach out to see if they could use your skills.  This type of thing shows initiative and character.  It’s also possibly a talking point for building professional relationships down the road.

Start Your Own Company

Starting your own development company and building something definitely makes you a Software Developer with experience.  You could build apps for the Apple or Google stores or find some consulting or freelancing gigs.  If this goes well then it could become your full time job!  At the minimum it’s another step that you’ve taken in the right direction to get yourself in the game.  Even if you don’t sell a bunch of apps or land the big contract, you’ve gained some valuable experience.  Starting a company could provide great benefits as you establish yourself as a Software Developer.

Conclusion

The point of this post is to encourage you to take action and know that you have control over your career.  You don’t have to wait for the perfect opportunity to begin your Software Development career.  The tools and resources are available for you to start right now and begin to gain experience as a Software Developer.  You don’t have to ask for permission or acceptance, just get started and show everybody what you can do.

 

How to become a Software Developer – Your Learning Plan

When I think about the next thing to learn it’s overwhelming until I get some sort of plan in place and get going.  Here lately, within the past 9 months or so I’ve been heavy into learning Xamarin, well Xamarin.Forms specifically.  For someone who hasn’t done a lot of mobile development in several years and with very different technologies in the past, the learning curve can look pretty steep.  After a month or so of consistent effort and getting the right resources, I was off to the races.  I say that consistency is the biggest factor or a top one to learn something.  Of course, to be consistent you have to be excited about it and have a good reason to learn it.

In previous posts, we’ve talked about determining your specialization as a Software Developer and putting together a high level plan to get into your ideal role.  Doing this upfront work is important so go back and read those posts in the ‘How To Become a Software Developer’ series before putting together your learning plan.  Your plan has to align closely with your Software Development niche.  And the plan does depend on where you are in general as a Software Developer.  I’m going to help you determine where to start and get a plan in place for a strong foundation that you can build on.

Consistency is Key

You have to make an effort every day, or almost every day, to learn and practice coding especially early on.  If you’re not already in a job that requires some coding then you’re going to have to be disciplined enough to schedule time to do this in the ‘margins’ of your life.  Coding is like anything else requiring repetition to get better.  You have to train your brain to think like a developer.

Scheduling Time to Learn

The previous post in this series is about creating your time budget.  If you haven’t done that then please do it to help you get your time in.  Go for at least 30 minutes a day up to however much you can.  If you’ve got a family, spouse and kids, as I do then this is going to be kind of tough.  Hopefully, as suggested earlier in this series, you’ve got a support structure around you to help you stick to your learning schedule and provide accountability for your progress.

Getting Help, Finding a Mentor

To aid your learning process I advise finding a mentor or a coach to guide you along.  A mentor or you might call this person a coach will provide you with guidance and accountability.   I was fortunate to have mentors at companies where I’ve worked whether they were explicit (knowingly assigned) or implicit.  Sometimes those around you simply fall into this role if the situation is right.

If you don’t have a mentor physically and readily available then search online for communities for general support or sites specifically for finding a mentor like CodeMentor.  You may have to pay for expertise but that is totally and fine really better than looking for free advice.  Free advice can only go so far.  When you pay for something you’ll get more out of it because your money is at stake.

Set Goals

Don’t simply say that you want to learn something.  That’s too general.  Any good goal has parameters defining it.  I’d say that you’ve heard of S.M.A.R.T goals.  A goal must have the following characteristics.

  • Specific – Instead of “I’m going to learn to code”, you should say that I’m going to learn T-SQL.
  • Measureable – Can you measure your progress?
  • Achievable – Is your goal too big?
  • Relevant – Make sure that it’s relevant and not leading you down a rabbit hole.
  • Time Bound – Say that you’ll have learned X things about T-SQL in 2 weeks.  Create a deadline and share it for accountability.

Where to Learn?

There are so many options these days.  Gone are the days of having to attend college to learn and prepare for a career, especially in technology.  I could list 50+ sites here but I want to make sure that you’ve got a solid plan in place before diving in.  In another post, I’ll list options based on discipline.  Before deciding where to learn, first decide how you best learn.  Do you learn most effectively by reading or video or a combination?  What is your budget?  Which resources cater best to your Software Development niche?

Give me six hours to chop down a tree and I will spend the first four sharpening the axe.

-Abraham Lincoln

Once you’ve determined your best setting then start looking for your resources.  Answer the questions below to make the most out of the time you’ve set aside.  With all of the options, hopefully you won’t was much time, and that’s why you put the time in up front.

Questions to Get Going

How much time can you spend per week on learning? If you don’t know then create your time budget.

How many times per week do you plan to learn?

What format works best for you when learning?  Video, audio, or reading?

What’s your budget?  You’ll be able to find a lot of free information but it is best, especially once you’ve determined your discipline to pay for assimilation (organization) of information along with someone to guide you along to make the most of your time and get you into that dream job ASAP.

What discipline or niche are you pursuing?  If you don’t know then the first part of your learning progression is to figure this out.  It’s okay if you don’t know but you’ll need to specialize at some point and focus your efforts in that area.

Where are you going to learn or what resources are you going to use?  Now that you’ve answered the previous questions you should be able to determine your resources.  Create your first learning ‘sprint’ or goal now and get going!

 

 

 

 

 

 

How to become a Software Developer – Create a Time Budget

Time is our most valuable resource.  There’s no guarantee of how much we’ll get so we’ve got to make the most of it.  With a family and career I’ve got to be careful about managing time so it’s important to stick to a schedule that aligns with my purpose and goals.  I’ve found that I don’t get anywhere without setting some boundaries for my time.  I’ll find myself wondering where the time went and end up frustrated if I’m not intentional about allotting blocks for specific activities.

Time Keeps on Slippin’

Time gets away from me so easily and I’m sure that you can relate.  As I get older, I’m in my 30’s as of this writing, it’s even more obvious and I feel pressure to do better with managing my time to help me make the most of it.  It’s amazing how quickly it seems that days, months, and years seem to pass by especially as life accelerates with family and other commitments. 

Knowing that I’ve made my best efforts with planning my time helps with the regret and is hopefully making me better with making every minute count.  We’ve got to keep moving forward with the best of intentions and look at each day as an opportunity to do better.  Each day that we wake is a gift and should be treated as such.  It may take a little coffee to improve your outlook but do what you have to do to create momentum on the days regardless of what you’re doing. 

Remember that you can’t change the past but you surely can create a better future.  Learn from past mistakes and stop doing the things that are hurting your progress.  Don’t beat yourself up over anything but respect that you may have a weakness or two that needs some help.

Protect Your Time

An important aspect to setting your time budget is making yourself and others aware of it.  Getting a mentor or accountability partner should help with this.  It could even be your spouse or significant other helping with this.  You should actually make them aware first to make sure that they’re on board with it!  You’ll certainly run into conflict if they’re not in the know and your career move, especially into something like Software Development, will go slower or may fail.

It’s easy to loosely set periods of time in your mind for things but getting it down on paper or in digital form helps with sticking to it.  For example, just saying I’ll get around to working on task A in the morning is probably not good enough.  I have to commit to it and be protective of that time down to hour.  I may even assign smaller periods of 15 or 30 minutes depending on the granularity of the tasks.  You have to set these boundaries and protect them with your WHY in mind.

Put barriers in place to help keep you on track.  This could be creating a space where you can work and learn distraction free.  It might be installing monitoring or restrictive software that only allows you to open certain programs and access certain things on the web.  Don’t let other people’s agendas take over.  Get good at saying No unless it aligns with what you’ve already planned to do.

168 Hours

Everybody has the same number of hours each week.  You may see others that are succeeding and wonder how they’re making such great progress.  It comes down to your priority, becoming a Software Developer, and aligning your time with it.  We make decisions constantly and each one affects the overall outcome.  If we don’t plan our time then somebody or something else will dictate it.  It’s easy to do but don’t let this happen!

Create Your Time Budget

You’re probably familiar and have likely done a personal finance budget.  I’m a big fan of budgeting my money as well as time.  Hey, time is money, right?  So doesn’t it make sense to budget both?  Being the focus of this post I want you to come away with an action to create your time budget.  Doing so will free you from the whims of life and put some guardrails around what little time you probably have to work on your move into a Software Development career.

  1.  Determine your non-negotiables – Sleep is top-of-mind here.  We all need sleep and probably need as close to 8 hours as possible to be effective.  If you say that you can get by on less than 6 then you’re probably not operating nearly as efficiently as you could be and fooling yourself.  Even at 7, which is closer to what I typically get, I feel that I’m not thinking as clearly as the days when I get the full 8 hours.  Other non-negotiables are things like eating and working or going to school.  For me, family and prayer time is in this category.
  2. What’s Left?  The remaining time is for working on your Software Development career, exercise perhaps, entertainment and so on.  Hopefully, you’ve got at least 10 hours per week remaining to work towards learning and doing things to get into your ideal role.

When creating your budget you don’t want to leave any time unassigned.  If you’ve come across Dave Ramsey then you may know that he advocates budgeting every dollar, he’s even got an app by that name.  I think that it’s equally important to budget every minute so that your time is not lost to the whims of the world, perhaps whatever is on TV or popping up in your social feed.

It’s difficult to stay on top of time and there will be days when you won’t be able to keep up.  I’m here to encourage you to keep going.  Keep you schedule or time budget top of mind but peaking at it frequently.  Let others know what your doing and that you’re going to be protective of your time.

I’ve created a template for download.  It provides entry for all 168 hours of your week.  Go ahead and fill it out.  I suggest filling it out weekly as it’s likely that you’re schedule will change.  Maybe come up with a baseline schedule and create variations of it week to week.  Good luck with staying focused and on schedule as you work toward becoming a Software Developer!

Get the Time Budget 

Just click here to download and fill it out!