Where to start learning software engineering

I want to become a software engineer. But i need a clear pathway or you could say a learning curve to follow.

If there is some experienced or in also job sector who could share me their thoughts…It would be a great help.

1 Like

if you are interested in we development, you could start with the FreeCodeCamp curriculum, as it shows everything you need to be a full-stack developer

you can also check up on the FreeCodeCamp YouTube Channels for thousands of hours of tutorials on a lot of topics

There has never been a greater time to be told software engineering, with ready access to software, resources, and online learning.

Simply have a look at a BS or MS program, at the university of your choice and use their program as your study template.

If you can’t decide, then simply visit MIT Online. they need to have their entire academic curricula online for over 10 years. These don’t seem to be identical as Coursera or EdX - these are the important courses offered by MIT that conjure their degree programs. Whatever your source, you would like a road map to guide your efforts.

Certainly, take some MOOC courses (I’ve done over 15) - these are handy. But you furthermore may need a scientific and engineering background - if you don’t have it already.

The MOOCs currently don’t do a decent job here because they’re trying to stay the entry requirements/background low. A programmer could be a much bigger role than simply being a ‘programmer’ or ‘coder’.


Software Engineering is a very broad niche, try to figure out the section in which you want to peruse your careers whether it is in Development, SQA or any other then try to enroll yourself in any bootcamp before going to any university . It will develop your coding skills and enhance your mind storming which gonna be very helpful for you later on


yes i a doing that right now. I will do my bachelors in cs later this year. So that is why i was asking where do i start??? which topics should i start covering? will it be learning htm,css and java script?? should i go to learn linux or what ? i am confused

1 Like

I will do my bachelors in cs later this year.

Well, that is a big, big step towards becoming a SE.

So that is why i was asking where do i start???

Are you asking where to start in the sense of working in parallel with your degree? Or to get ready for the degree program?

For the first, I would say to focus on your degree work.

As getting ready for the degree, I would say to just work on some basic programming. I might work on the Python section since that is a popular teaching language now - or maybe find out what the main language will be in the school. Even if you can’t find out, just coding in general would be good. There are other topics covered in CS - I’m sure there are good books out there. Also, Harvard offers their course in basic CS that would be a good introduction.

will it be learning htm,css and java script??

Sure, I guess. Those are mainly web development which is a subcategory of SE. It can’t hurt to learn.

should i go to learn linux or what ?

Whatever you end up doing, knowing the basics of linux will probably be needed - that couldn’t hurt.

i am confused

Don’t worry about finding the perfect path. Just learn.


is javascript needed for se???

Is it needed? Not really needed, depending on the program. Is it a good thing to have that may be needed at some point? Yes.

It really depends on your program. If you want to learn it, go for it. You will learn a bunch of things that will help you with all programming languages. Just realize that JS is a fairly quirky language. Still, it would help you to learn it - as would any other popular modern language. Another option would be to contact wherever you are going to study SE and find out what languages they use. C? C++? C#? Python? Java? JavaScript? Something else?

But yeah, if you’re just “I don’t know what I’m going to end up doing but I know that I want to do something right now”, then yeah, go ahead and learn some JS. You will have a little fun and begin to learn the basics programming and that will help you, wherever you end up. And most of those languages on the list above are descendants of C and so is JavaScript so they all have a similar syntax.

I would say not to sweat it - just learn, have some fun.


Some language is needed for software engineering, yes. Some developers like myself are generalists and learn a lot of languages. Others specialize in a few languages or even one, and sometimes on specialized hardware architectures at that. There are geniuses writing microcontroller programs who have no idea how a web page works. It’s a broad and deep field.


I think that @kevinSmith’s advice is right on the money.

If you want to start learning something to get you off to a strong start, pick a language and start learning it. Any programming exposure will help, so I suggest choosing a language that has reasources that you like or tutorials and sample projects that seem at least midly interesting.

While you’re in school, your focus will be on whatever you’re learning at the time. When your studies spark curiousity, pursue that. Throughout your degree you’ll move through a variety of topics (and languages), so it’s by following your curiosity and pursuing some subjects beyond homework that you’ll learn what you really want to do.

“Software engineering” is just another term for “programming” or “software development”, so it’s a category of career rather than a specific jobs with specific language/technology requirements. That’s why your curriculum will include working in multiple languages (and language families), touching on all sorts of subjects like compilers, operating system design, linux, databases, computer architecture, statistics, mobile applications, linear algebra, and project management.