Sign in

Just a developer.
Photo by Anna Shvets from Pexels

Becoming a data scientist on your own is possible but slow.

If you’re coming into the field without a foundation or a network to guide you, it could take years. There are a thousand things to learn, and many more rabbit holes dotting the landscape to distract you.

A mentor can help you cut through the cruft, tell you what you need to hear when you need to hear it, and help you achieve your goal sooner.

Mentors certainly made a difference in my data science and machine learning career. …

Photo by Alexander Suhorucov from Pexels

Most people hate pair programming with a burning passion. But the people that like it, love it.

While we use it on the job, it’s also my favorite technique for interviewing potential hires. Pairing is a better predictor of job success than any other technique I’ve tried.

It allows vetting candidates for behavioral competencies, technical skills, and company fit, all at the same time.

That sounds crazy, but hear me out.

Most Interviewing Techniques Don’t Predict Success

Most interview methods merely test that a candidate is prepared for the interview.

But they are often far removed from the ability to write features in a complex app…

Photo by Yan Krukov from Pexels

A year of freelance software development left me with a number of takeaways.

But the most important is this.

Writing code is easy but getting clients is hard.

If you’re going to take a run at being a freelancer, understand what you’re getting into, know that being a rockstar developer is not enough, and have a plan of action for getting work.

Given my success freelancing, I’d like to share what worked and what didn’t regarding finding clients.

Here are fivechannels I’ve used, ranked from best to worst.

1. Previous Employers

Reach out to companies you’ve worked for in the past and ask…

Photo by Andrea Piacquadio from Pexels

If there’s anything we’ve learned from hustle porn and the 4 Hour Work Week, it’s that,

Corporate Life = Bad,

Entrepreneurship = Good.

But is that really true?

After leaving a miserable job, I decided to turn the dream of working for myself into a reality, become a freelancer and never look back.

With almost 10 experience years in my field and a “get rich or die trying” work ethic, there was no way I could fail.

It even crossed my mind that it was going to be easy… famous last words.

But the truth is, it was exhausting.


Bored male staring at laptop
Photo by Andrea Piacquadio from Pexels

Have you ever started a new job and then immediately regretted it?

I have… a couple of times. Both at the management level and as a developer.

Some companies will give you little, take a lot, and still ask for more. Get out of these places as fast as you can. There’s always a world of other opportunities out there.

Here are some red flags from companies where I’ve written code.

Senior Developers Are Too Busy To Help

It’s your first few weeks on the job, but no one has time to answer questions.

A certain amount of technical and domain knowledge is required before you can…

Photo by MART PRODUCTION from Pexels

As a senior developer, I do A LOT of code reviews. Many for developers in their first real coding job.

Love it or hate it, code reviews are one of the best ways to improve your software development skills.

Having said that, I’ve seen a lot of mistakes, many again and again.

Here are a few of them.

I’ve tried to write this so the advice makes sense whether or not you can read code.

1. Too many comments

Code should speak for itself.

If you can’t tell what a function does by reading its name and the code inside, it’s not concise enough.

Photo by Raj Rana on Unsplash

Even before the pandemic, I’d find any reason to work from home.

Errands, sick pet, plumber coming… they weren’t made up. But when you’re looking for an excuse, you can usually find one.

The pandemic allowed me to work from home every day.

Software developers are genuinely privileged in being able to work remotely. Not everyone is so lucky.

Post-pandemic, I’m not going back. Even if that means changing companies.

Here’s why.

We’re More Productive When No One Stands Over Our Shoulders

There’s nothing worse than being watched while writing code. Regardless if it’s another developer when pair-programming, or the CEO asking for updates.

The ability to focus on getting…

Two women at whiteboard
Photo by ThisIsEngineering from Pexels.

The most crucial software engineering lessons I’ve learned come from two sources:

  1. Failed projects
  2. More experienced developers

Here are some important lessons I’ve learned from senior developers throughout my career.

None are black and white, and there are always exceptions. Only experience can guide you regarding when a rule should be applied or ignored.

Let’s dive in.

Stop Over-Engineering

Nine times out of ten, building more infrastructure, features, or abstraction than necessary is a waste of time.

This is especially true if you work at a startup, where product direction can change with the wind.

While rare cases exist when over-engineering worked…

Photo by ThisIsEngineering from Pexels

I used to fear that artificial intelligence (AI) would take my job and leave me unemployed.

The fear-mongering around AI is undoubtedly increasing by the year.

But the longer I write code, and the deeper I get into machine learning, the less I worry.

Recently, OpenAI and Microsoft (which owns GitHub) released Copilot, an AI-powered pair programmer.


Photo by Max Fischer from Pexels

Math is scary.

You want to do machine learning, but you’ve read it requires probability theory, statistics, calculus, and linear algebra.

I guess you’re going back to school for 4 years…

Thankfully, it’s not true. Take it from a software developer who self-studied ML, then spent 3 years running machine learning for a startup.

I’ll explain why you don’t need math.

Learning math will slow you down

Imagine needing to understand how an engine works before driving a car? It might help you tune the car for an edge in racing. But you certainly don’t need that knowledge to drive.

Similarly, many ML writers recommend covering…


Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store