To most, luck is about rolling the dice, finding a dollar on the ground, or having all your tests pass after a last-minute code commit.

Luck is given credit for many people’s struggles and accomplishments. Some use bad luck as a reason for their current failure. At the same time, some might credit good luck for all their success in life.

Is luck just chance, or can it be engineered?

Ok, we’re Software Developers here. We are a pretty skeptical bunch. Most of you might be wondering if luck even exists. No definitive answer has been found yet. Maybe luck only exists in the mind of a lucky person.

That doesn’t mean we can’t build a similar mindset and use luck to our advantage.

“Luck is a matter of preparation meeting opportunity.” – Lucius Annaeus Seneca

Another way to view luck is to see it as having opportunities. You’re more likely to have a breakthrough if you’re given more opportunities. At the same time, nothing will happen if we don’t follow through on the opportunities that we’ve already been given.

That’s why luck can never be one hundred percent of the reason why someone is successful. Luck might get you an at bat, but it doesn’t guarantee that you’ll hit a home run.

The good news is that with the right preparation, anyone can have a lucky break.

What makes some people luckier than others?

Luck probably has nothing to do with rabbit feet or copper pennies.

Psychologist Richard Wiseman surveyed hundreds of people to find out who considered themselves lucky or unlucky. He then put both groups through different tests to see how they performed. The people who considered themselves lucky consistently performed better.

Wiseman eventually collected most of his research into a book called The Luck Factor: The Four Essential Principles. In the book, Doctor Wiseman talks about the four principles that lucky people follow.

Principle One: Maximise Chance Opportunities

chance opportunities

Lucky people are skilled at creating, noticing and acting upon chance opportunities. They’ve developed insight and thought. They don’t just view, they act. They don’t just see trends, they ride them.

A chance opportunity might be running into an old friend whose company is looking to hire more developers. Even being asked to give a small demo during a meeting because someone else is out sick can be an opportunity.

A great example is with John Sonmez and his work with a training website called Pluralsight. John was given a great opportunity when he was asked to create a tutorial video on Android Development for Pluralsight. He’s maximized that opportunity by creating over 50 courses.

As Software Developers, we tend to stay to ourselves, which can limit our chances for random opportunities. You don’t have to change who you are. If you’re an introvert, that’s fine. Just having a relaxed attitude when meeting others helps. You can also reach out to old friends and build deeper relationships. A lot of good can come from building up your network both in the real world and online.

Principle Two: Listening to Lucky Hunches

Lucky people make effective decisions by listening to their intuition and gut feelings.

Software Developers can be overly logical when it comes to most decisions.  When making a choice between a linked list and an array, most software developers aren’t going to choose what feels right. We’ll make a decision based on the logical needs of the application. Even with things like finding what to learn next, we tend to follow our heads, not our intuition. Most challenges that we face in our day-to-day work can be solved using logic. A strong focus on logic is encouraged, helpful, and is necessary for most programming projects.

Logic-based problems aren’t the only thing we are faced with as Software Developers. Following your intuition helps with more messy problems that don’t have clear logical answers. The good thing about intuition is that it can be improved over time. One good way to improve your intuition is by building a habit of daily meditation. Using an app like Headspace or Clam can really help. Start off with just a few minutes.

Another benefit of following your intuition is that it helps you make decisions more quickly. Making quick decisions then helps capitalize on opportunities.

Principle Three: Expect Good Fortune

Lucky people are certain that the future is going to be good.

They believe this so much that it almost becomes self-fulfilling. Having a positive outlook can also improve interactions with others. When things get tough, lucky people are still optimistic, which helps them keep going. They believe that everything will work out in the end, and that their hard work will pay off.

A good example of this can be seen in the life of Arnold Schwarzenegger. Others put him down, but he believed in himself enough to keep working towards his goal of becoming a movie star.

As Software Developers, we need to avoid the trap of skepticism. Our beliefs can have a tangible impact on our work, and the people that we work with. John Sonmez has a good video talking about how your beliefs determine your reality.

Principle Four: Turn Bad Luck to Good

bad luck to goodLucky people use different techniques to help them deal with setbacks. They even thrive when bad things happen. Taking the time to remember how good they really have it helps. They don’t constantly worry about the future or the past. The lucky group also tried to take control of every situation.

Ryan Holiday has a great book on this subject called The Obstacle Is The Way. In the book, Ryan talks about the stoic principles that successful people throughout history have used to overcome challenges. He discusses how Gandhi didn’t physically fight for the independence of India: “Sometimes you overcome obstacles not by attacking them, but by withdrawing and letting them attack you. You can use the actions of others against themselves instead of acting yourself.”

Software development is all about problem solving. When we face challenges, we need to see them as the chance to improve our skills. That way we can look back and turn bad luck into good.

“Through our perception of events we are responsible for the creation—as well as the destruction—of every one of our obstacles.” – Ryan Holiday, The Obstacle Is The Way.

How to Engineer Your Lucky Break

Luck is not some psychic power. It’s more the consequence of how you behave and how you view your daily life. Luck is something that you can learn using the four principles above. It only takes a shift in your mindset. Now,let’s get into a few tactical things that you can do to help engineer your lucky break.

Become prolific.

“The secret of getting ahead is getting started.” – Mark Twain

By doing a large volume of work, you greatly increase the chance that some of it will lead to greater opportunities. You could write blog post, make training videos, or build online courses. On the more technical side, you could also build mobile apps, games, or start an open source project.

John has a great video on how to be prolific. The short version is that you build systems around your work. After you have a system in place, you continue to use it over and over again to generate a large amount of work over time.

Don’t give up.

“We must use time wisely and forever realize that the time is always ripe to do right.” – Nelson Mandela

Throughout your time as a software developer, you’re going to experience good luck and bad luck. Most people stop after a few unlucky breaks. A successful career isn’t built in a single moment. It’s millions of moments chained together through time.

Over time, when you show up every day and do your best, you’re more likely to capitalize on new opportunities. You just need to gradually build incremental success. Doing so requires dogged persistence and the ability to recover gracefully from repeated failures.

Time is the greatest equalizer. Remember to be patient.

Have a flexible long-term vision.

“You must be shapeless, formless, like water.” – Bruce Lee

Once you’ve pinpointed your ultimate goal, you have to believe there are many ways to get there. Clarifying long-term goals is important, but don’t become too rigged with the path you think should be taken.

People who spot and seize opportunity are more open to life’s forks, so they see possibilities that others miss.

To do this, you have to experiment like a hacker. Hackers try a lot of different things. They aren’t paralyzed by decisions. Hackers take action and change their experiments based on the results. This requires openness to life’s surprising twists, which can lead to more lucky breaks.

“All life is an experiment. The more experiments you make, the better.” – Ralph Waldo Emerson

Go to where the puck is going to be.

“A good hockey player plays where the puck is. A great hockey player plays where the puck is going to be.” – Wayne Gretzky

lucky coins

As the cliché goes, you have to be in the right place at the right time. The most you can do to improve your chances of getting lucky is to be in more relevant places at more times.

That means following trajectory based on what’s coming–not always what’s happening right now.

Building an eye for spotting trends will help you engineer your lucky break. As a small example, with many companies moving to micro services, there has been an increased need in the API space. Another longer-term play might be cryptocurrencies or virtual reality.

Start Working On Your Next Lucky Break Today

Having more luck might just take a change in mindset, but with a little work we can all have more opportunities.

I’ve had a few lucky breaks, but I’m still working on my next one. Maybe this post will be it.

What are some lucky breaks you’ve had in the past? Let me know in comment section below.

Good luck!