Technology

How to make other data scientists drool with envy

If you are a data scientist, there is a skill set you can learn that is transformational.

It will open doors for you, wherever you go. Doors that your colleagues can’t even see.

It will rocket you to a new level, where what you accomplish with ease makes others drool with envy.

And the best part: once you really learn it, you have it running for life.

What is this skill set, you wonder anxiously from the edge of your seat.

Software engineering skills.

Add this to your almighty data science skill set and nothing will stop you. I don’t mean just becoming a data engineer or type B DS. Even if you want to remain a normal type A-for-analyst data scientist, learning this skill set allows you to run emoji-happy circles around scientists. data with teary emojis that don’t.

So how do you do that? Some of the keys to this kingdom:

1) Escape the notebook

You’re going to hate this one:

You need to get EXCELLENT at writing code OUTSIDE of notebooks.

Yes, I know you love Jupyter. He is fantastic. Nothing against.

But you can only go so far in that park.

If you want to write functions, classes and modules that OTHER data scientists import into THEIR notebooks…

Build systems that leverage the work that other data scientists are doing, at a higher level…

Or even make your brilliant ideas usable by people who don’t read math books for fun…

You can’t do any of these things in notebooks. Not in any remotely effective way.

It’s time to equip yourself with more sophisticated software engineering practices and tools.

2) Master Object Oriented Programming

It’s weird how bad most data scientists are at this.

OOP is much more important than you think. It’s the foundation for everything else you do when you write powerful and complex software systems.

When you import a Pandas DataFrame… that’s a class.

When you create a LogisticRegression classifier in scikit-learn… that too is a class.

You are USING classes all day, every day. Type B data scientists created them for you to use.

But that only scratches the surface. NOTHING will elevate you and set you apart from other data analysts like learning to write good object-oriented code.

3) Learn to write unit tests

Well, except maybe writing unit tests.

This is a BIG deal. The libraries you trust every day use automated tests. They use a lot of them. That should tell you something.

Writing automated tests and doing test driven development…it’s a SUPERPOWER. It completely changes what you are capable of. When you learn to write tests, suddenly you can achieve things that you couldn’t even touch before. Especially when combined with your object-oriented programming skills. See how they build on each other?