A software engineer is anything but a bystander in their own software development process. They know what they’re doing, and oftentimes have to train themselves on the best practices of the software saas 27m series altos ventures development process. If you’ve just started as a twenty something year old engineer who, while maybe smart enough, can’t figure out how to set up Git or Jenkins, then this list is for you!

This is my personal set of steps that I usually go through when I want to start learning how to code with an application from scratch. Note that this is an ideal method for learning code and will surely not work in all cases. You have to keep in mind that the end goal of all these steps are to make sure you understand the very basics of your application, as well as make sure you’ve covered all your ground work.

1. First, you need to learn how to code with general purpose language.

This is the very first step in the 8 steps and it’s not just an arbitrary first step. You need to take into consideration that many applications are coded in general purpose languages such as C++ or Java and not your proprietary language that’s used at work. As a software engineer, it is important you be able to know how programs are written with general purpose languages so that you can effectively communicate with the development team of your company or choose which language to use if you are a freelancer or startup founder.

Oftentimes, this is my biggest problem when I start using new applications. I’m not fully aware of all the syntax I’m supposed to be using. This is where that first step comes in.

2. Next, you need to teach yourself how to code with your software development language (often proprietary).

Again, this is an important step as many applications are coded in a proprietary language that’s specific for your company only. You learn how these languages work by playing with them and experimenting with different ways of writing code. In my experience, I’ve found that taking a 3–4 month break from using my internal software development language and picking up Python or Ruby or Haskell has sharpened my skills very quickly without missing a beat.

3. Next, you need to run some tests with your program.

The best way to do this is to run a copy of your source code over different networks and make sure it still works. I know this sounds simple enough but this is absolutely crucial in checking that everything’s fine with your code base before actually programming other parts of the application. This is a very important step so don’t underestimate how essential it is.

4. Next, you need to wire up all the units of your application (and data).

I’m not going to get into detail on how you go about installing such software here because there are many ways you can install these programs from different repositories and package managers using either git or yarn.

After you’ve set up all the software properly, you need to wire it all up with your database and other services. This is a trickier step and requires a lot of knowledge about various services, their configuration features and how to terminate their communication. As an example, I can definitely talk about RethinkDB or NoSQL databases since these are very popular among the community. I understand that this step might seem long but it’s very important in making sure your data is stored in a way that makes sense for your application.

5. After you’re done wiring everything up, debug the hell out of everything!

This is where I focus on debugging my applications and checking for mistakes both at compile time as well as runtime. This is definitely the point where I feel like all my past experience as a software engineer really shines. I understand how to debug my code, how certain bugs are fixed, how certain design choices are made, and the best of all, I can’t even guess what the bug is without looking at any logs or error messages!

6. After you’re done debugging everything, write an awesome tutorial so that anyone can follow your footsteps in just a few hours!

This is one of the most important steps in getting others to use your application. This tutorial doesn’t have to be something big and it doesn’t have to be very detailed either. Keep it short and informative as much as possible. Most software projects nowadays have a README file that developers use to get an idea of how the project works.

7. Start making sure your application can be “friendlier” and more user friendly.

This might or might not be a very important step depending on your point of view. You can go through each application you have and make sure there are standard packages that are prewritten, as well as popular 2nd level packages that allow customization of your application based on what others need for their project.

8. Start bringing back all the lost glory to your lost coding project(s)!

This is the most important step in my opinion. Once you’ve written tutorials, then write blog posts about your experience and make sure anyone who needs it can easily learn how to use your great application. The best way to do this is by writing tests for everything that seems to be working, as well as making sure everything is properly documented in a README file (and not just in a description of your application).

Conclusion:

I know that my method may be a little unorthodox but I believe it’s something you should consider if you’re looking to learn the basics of programming in a relatively short period of time.

I have been developing software for roughly 4 years now and I was able to go from knowing absolutely nothing about programming to writing this article. This method is definitely not an easy way, but it’s much more rewarding than when you take the easy route and get stuck learning syntax.

Good luck! 

LEAVE A REPLY

Please enter your comment!
Please enter your name here