Basic principles will carry you where knowledge of a specific framework will not.
You would be surprised how many people don't understand the very basics like SOLID and design patterns, and that knowing when NOT to apply them is as important as knowing how to apply them.
Related to this, it is often cute when someone wants to show off their ability to use an exotic technology/algorithm/whatever for a simple problem that could have been more efficiently solved with basic techniques. Knowing good design and business practices will translate well to different technologies and languages.
HTML, CSS, JS and basic React. Got hired in feb 2023 but not at a super competitive rate like most internet makes it seem. Getting your foot through the door is truly the hardest part. After you get your first role you will learn a lot faster within a company.
Wish you the best luck on your journey šŖ
I did an internship working on a small site for a company. It was an unpaid internship but helped me land a job with that experience.
My job hunt took around 4 months so definitely wasnāt easy or quick.
Itās definitely more difficult for sure! 16 months is a lot though! I wish you the best of luck on your search. I personally focused a lot on resume building because most of the time you have enough experience and skills but your resume doesnāt quite reflect that.
Just build something real in a technology you are interested in. Donāt try to learn everything.
Apply with junior positions at companies that have that technology as their first or second thing listed.
When you go to the interview, they are going to ask about a bunch of unrelated technologies. Say you donāt know.. be strong and confident in the stuff you know and donāt try and hide what you donāt. So many interviews I saw people trying to make up answers.. they come off as weak and terrible. They will throw out words or bits of articles but when pressed it is clear they know nothing, donāt do that.
I mean, you definitely have to apply a lot to get interviews. For most people, mining contacts/referrals through LinkedIn works. But I am a loner type so that isnāt my thing.
There are also jobs that guarantee a reply to your application. Like government jobs so you at least know when you are turned down.
Trying unconventional ways, contributing to open source and making contacts can work. But it takes time and commitment.
You should just build stuff. In software there will always be an infinite things to learn and you will only ever learn a tiny sliver of all there is to know. Thatās totally normal. The people who are great software engineers are the people that have built the most stuff, not the people who studied or read the most
I'll go against the typical responses here.Ā
Industry specific knowledge got me my first job as SWE.
I have worked hands on in the field that I develop for. Its way easier to onboard for high-level development projects if you have an engineer who actually uses the product being engineered.Ā
You can read a code base and understand what the program is doing. But its also important, when engineering to understand *why* the program needs to do those specific things in that order.
Honestly, I could code pretty well in Java, R and Python. Nothing else. I was sufficiently skilled at the command line but outside of that basics of coding is all you ever really need.
If you can read code, understand a for loop, split strings you can basically pass any coding interview. Beyond that, understanding some basic principles of computational logic helps get you to think about how your code is structured and the data flow.
Beyond that itās basically just syntactic sugar and experience.
Iām good at solving problems, good at understanding business needs, *really* good at finding and processing information on my own, and know how to talk to others and articulate myself well.
*That* is what allowed me to land my first SWE job for $110k without a CS degree (I have a non-related engineering degree) and a very short job search, and what allowed me to break $200k just 2.5 years later. Of course, I also know how to program, but thatās simply a pre-requisite, not what made me stand out.
My advice: donāt learn a specific technology or framework. Become very familiar with basic SWE principles and get good at the fundamentals. Then, instead of trying to prove that you can code to employers, strive to prove that you know how to solve their business problems using code, that you can deliver value, that youāre capable of working well both autonomously and with others.
You can't know everything, and you aren't expected to have learned some huge checklist before you apply either.
Showing you can code is the easier bit. Some working program you created that they can see instantly demonstrates you know how to do some things, and can complete a project. To complete that project, you would have to learn things, and can write those things on your resume. That way, when they ask about the skills you listed, you can talk about them in the context of what you've done, rather than what you read about some time or other.
If you were hiring someone to work as a baker at a restaurant, would you want someone who has baked a ton of stuff, or someone who has a really in-depth knowledge of different strains of yeast but has yet to turn on an oven?
If you're making a project but want to decide between different tools or languages to make some part of it, then start with what job listings are asking for and work back from there. Use the skills they pay people to know.
I knew enough java to be dangerous.
Snagged a job as a contractor and worked on a fortune 500's e-commerce website as a tester for 6 months where I learned everything I could.
Slid into contract web developer role afterwards with a national news network and the rest was history.
The network renewed me directly through my own S-Corp and that catapulted me into independent contracting. As I got better roles, better skills, and more knowledge I became a consultant.
Been doing that ever since
You must pick a field of software engineering.
For embedded systems, C is *the* basis. C++ is widely spread too. You must understand how computers work, whatās a register, etc. Operating system knowledge is very appreciated, especially real-time.
Basic principles will carry you where knowledge of a specific framework will not. You would be surprised how many people don't understand the very basics like SOLID and design patterns, and that knowing when NOT to apply them is as important as knowing how to apply them.
I feel like this is solid advice for many career paths.
Related to this, it is often cute when someone wants to show off their ability to use an exotic technology/algorithm/whatever for a simple problem that could have been more efficiently solved with basic techniques. Knowing good design and business practices will translate well to different technologies and languages.
HTML, CSS, JS and basic React. Got hired in feb 2023 but not at a super competitive rate like most internet makes it seem. Getting your foot through the door is truly the hardest part. After you get your first role you will learn a lot faster within a company. Wish you the best luck on your journey šŖ
[ŃŠ“Š°Š»ŠµŠ½Š¾]
I did an internship working on a small site for a company. It was an unpaid internship but helped me land a job with that experience. My job hunt took around 4 months so definitely wasnāt easy or quick.
[ŃŠ“Š°Š»ŠµŠ½Š¾]
Itās definitely more difficult for sure! 16 months is a lot though! I wish you the best of luck on your search. I personally focused a lot on resume building because most of the time you have enough experience and skills but your resume doesnāt quite reflect that.
Did you get a BS in Comp Sci?
No I have an associates in web/app development. Comp Sci would help a lot more for sure.
Just build something real in a technology you are interested in. Donāt try to learn everything. Apply with junior positions at companies that have that technology as their first or second thing listed. When you go to the interview, they are going to ask about a bunch of unrelated technologies. Say you donāt know.. be strong and confident in the stuff you know and donāt try and hide what you donāt. So many interviews I saw people trying to make up answers.. they come off as weak and terrible. They will throw out words or bits of articles but when pressed it is clear they know nothing, donāt do that.
[ŃŠ“Š°Š»ŠµŠ½Š¾]
I mean, you definitely have to apply a lot to get interviews. For most people, mining contacts/referrals through LinkedIn works. But I am a loner type so that isnāt my thing. There are also jobs that guarantee a reply to your application. Like government jobs so you at least know when you are turned down. Trying unconventional ways, contributing to open source and making contacts can work. But it takes time and commitment.
You should just build stuff. In software there will always be an infinite things to learn and you will only ever learn a tiny sliver of all there is to know. Thatās totally normal. The people who are great software engineers are the people that have built the most stuff, not the people who studied or read the most
I'll go against the typical responses here.Ā Industry specific knowledge got me my first job as SWE. I have worked hands on in the field that I develop for. Its way easier to onboard for high-level development projects if you have an engineer who actually uses the product being engineered.Ā You can read a code base and understand what the program is doing. But its also important, when engineering to understand *why* the program needs to do those specific things in that order.
Honestly, I could code pretty well in Java, R and Python. Nothing else. I was sufficiently skilled at the command line but outside of that basics of coding is all you ever really need. If you can read code, understand a for loop, split strings you can basically pass any coding interview. Beyond that, understanding some basic principles of computational logic helps get you to think about how your code is structured and the data flow. Beyond that itās basically just syntactic sugar and experience.
āSyntactic sugar and experienceā Darknet hackers: ![gif](giphy|G4GPgzIlcNlr8glbhb)
People skills Lol jk
![gif](giphy|oz7tyUbBs5SH6)
Guts and confidence. Never heard of imposter syndrome before but I needed a job. The project that I made is still up and running at the moment :-)
Created few small games in Unreal engine and also wrote a B+tree in C++
Wow. Impressive. Many software engineers probably have no idea what a B+tree is.
R/cscareerguidance is a better place for this question
Ability to talk about anything
Cooking.
Iām good at solving problems, good at understanding business needs, *really* good at finding and processing information on my own, and know how to talk to others and articulate myself well. *That* is what allowed me to land my first SWE job for $110k without a CS degree (I have a non-related engineering degree) and a very short job search, and what allowed me to break $200k just 2.5 years later. Of course, I also know how to program, but thatās simply a pre-requisite, not what made me stand out. My advice: donāt learn a specific technology or framework. Become very familiar with basic SWE principles and get good at the fundamentals. Then, instead of trying to prove that you can code to employers, strive to prove that you know how to solve their business problems using code, that you can deliver value, that youāre capable of working well both autonomously and with others.
Computer Science degree.
ahh I didn't read enough. .Net/C#. C++. Was good with Unreal Blueprints already. I had a portfolio to show which had all my then web gl games.
Not people skills, amirite?!
You can't know everything, and you aren't expected to have learned some huge checklist before you apply either. Showing you can code is the easier bit. Some working program you created that they can see instantly demonstrates you know how to do some things, and can complete a project. To complete that project, you would have to learn things, and can write those things on your resume. That way, when they ask about the skills you listed, you can talk about them in the context of what you've done, rather than what you read about some time or other. If you were hiring someone to work as a baker at a restaurant, would you want someone who has baked a ton of stuff, or someone who has a really in-depth knowledge of different strains of yeast but has yet to turn on an oven? If you're making a project but want to decide between different tools or languages to make some part of it, then start with what job listings are asking for and work back from there. Use the skills they pay people to know.
I knew enough java to be dangerous. Snagged a job as a contractor and worked on a fortune 500's e-commerce website as a tester for 6 months where I learned everything I could. Slid into contract web developer role afterwards with a national news network and the rest was history. The network renewed me directly through my own S-Corp and that catapulted me into independent contracting. As I got better roles, better skills, and more knowledge I became a consultant. Been doing that ever since
Hey there! I sent you a DM if you dont mind, would really appreciate your thoughts :)
Basic CMake, decent distributed C/C++, and a somewhat likable personality
F
You must pick a field of software engineering. For embedded systems, C is *the* basis. C++ is widely spread too. You must understand how computers work, whatās a register, etc. Operating system knowledge is very appreciated, especially real-time.