11 answers
Asked
789 views
How to enter in software work force?
I completed my masters in computer Science in 2010 and joined teaching profession. Now I want to join software industry, but not sure how to start, where to start, should I join any boot camp or get admission in some college/university courses? Please advice.
#technology #software #computer science
Login to comment
11 answers
Updated
Deepak’s Answer
Pari,
You. already have a degree in Comp. Sci, so the concepts you've learnt still apply, regardless of how long it's been. While I did my Master's in Comp. Sci. in 1995, I still apply what I learnt to my job today as a Product Manager when I deal our IT team. I would recommend the following to see whether you need to take any further classes or certification:
1. Go to job sites such as Indeed or other job sites, and look at job postings within the technology industry.
2. Narrow down the types of jobs that look interesting to you, or that you feel you could do. Don't get discouraged if they're asking for specific skills or a specific programming language; languages can be learnt. Just try to get a general idea of what you'd like to do to focus on the types of jobs you'd like to do in the software industry.
3. Once you have a list of jobs, look at the skillset they're looking for. If there's a common set of programming languages or skill sets you don't currently have with your Master's, those might be ones that you may want to enhance by either taking free courses or certifications that are taught by companies like Coursera, Udacity, EdX, etc.
4. Get a plan in place. Put together a framework for looking for a software engineering job. Get your resume together, and get help with the resume if you need it. Get templates for a cover letter/email, a thank you letter/email, and a follow-up letter/email.
5. Start interviewing for positions, once you feel that you're reasonably well prepared. The more you do the better you'll get. Prepare a list of possible general and specific questions interviewers may ask, and as you interview, keep adding to the list. When you interview, make sure you know what the company you're interviewing for does, so you can ask questions, not just about the position, but also generally what the company does and where it's headed.
Wish you all the very best with your job search!
Best,
--Deepak
You. already have a degree in Comp. Sci, so the concepts you've learnt still apply, regardless of how long it's been. While I did my Master's in Comp. Sci. in 1995, I still apply what I learnt to my job today as a Product Manager when I deal our IT team. I would recommend the following to see whether you need to take any further classes or certification:
1. Go to job sites such as Indeed or other job sites, and look at job postings within the technology industry.
2. Narrow down the types of jobs that look interesting to you, or that you feel you could do. Don't get discouraged if they're asking for specific skills or a specific programming language; languages can be learnt. Just try to get a general idea of what you'd like to do to focus on the types of jobs you'd like to do in the software industry.
3. Once you have a list of jobs, look at the skillset they're looking for. If there's a common set of programming languages or skill sets you don't currently have with your Master's, those might be ones that you may want to enhance by either taking free courses or certifications that are taught by companies like Coursera, Udacity, EdX, etc.
4. Get a plan in place. Put together a framework for looking for a software engineering job. Get your resume together, and get help with the resume if you need it. Get templates for a cover letter/email, a thank you letter/email, and a follow-up letter/email.
5. Start interviewing for positions, once you feel that you're reasonably well prepared. The more you do the better you'll get. Prepare a list of possible general and specific questions interviewers may ask, and as you interview, keep adding to the list. When you interview, make sure you know what the company you're interviewing for does, so you can ask questions, not just about the position, but also generally what the company does and where it's headed.
Wish you all the very best with your job search!
Best,
--Deepak
Thank you so much for detailed answer, it's really helpful.
Pari
Updated
Venu’s Answer
Hi Pari
I'm also a computer science grad and was also faculty before I stepped in to IT workforce! :-)
First and far-most, I believe, formal training and certification to keep up with IT industry trends is the key to be successful. Since you have 10 years of teaching that is a given. Perhaps list out your key areas of interest as there are many specialization areas you can branch out. Major areas being Development, Testing, Operations, Networking, Infrastructure, Data Mining, AI/ML etc.
New technology trends are in the area of AI based apps, Data Mining, Cloud engineering, Site Reliability engineering, Kubernetes, Edge Computing, VR, AI Ops are the much sought after areas of specialization in the industry today. 5G technology is reshaping the mobile computing. Identify one or more of these, take a refresher certification (as needed) to position yourself to be competitive in the workforce that you will be joining in. You will be set for success for sure. There is recent surge in soft skills demand as most of the workforce is going remote and global - Communication skills, being tech savvy etc are the key to the success factor as well.
2nd critical area is networking with folks in the eco system. Social media platforms offers great opportunities to network with IT/software professionals. Such as Linked-in, various technology forums. Become a member of IEEE and similar professional groups.
Watch out for open positions on various companies job boards, family or friends referrals and in your professionals network. Position that suits your skills and carrier aspirations. Get ready with resume that reflects what you can do and how that makes a difference to the employer if that position is offered to you. There are many resources on line to look up for great inputs on this topic as well.
Seek referrals form professionals you know which can be shared with your job application.
Be confident you will there in no time!
Good luck!
I'm also a computer science grad and was also faculty before I stepped in to IT workforce! :-)
First and far-most, I believe, formal training and certification to keep up with IT industry trends is the key to be successful. Since you have 10 years of teaching that is a given. Perhaps list out your key areas of interest as there are many specialization areas you can branch out. Major areas being Development, Testing, Operations, Networking, Infrastructure, Data Mining, AI/ML etc.
New technology trends are in the area of AI based apps, Data Mining, Cloud engineering, Site Reliability engineering, Kubernetes, Edge Computing, VR, AI Ops are the much sought after areas of specialization in the industry today. 5G technology is reshaping the mobile computing. Identify one or more of these, take a refresher certification (as needed) to position yourself to be competitive in the workforce that you will be joining in. You will be set for success for sure. There is recent surge in soft skills demand as most of the workforce is going remote and global - Communication skills, being tech savvy etc are the key to the success factor as well.
2nd critical area is networking with folks in the eco system. Social media platforms offers great opportunities to network with IT/software professionals. Such as Linked-in, various technology forums. Become a member of IEEE and similar professional groups.
Watch out for open positions on various companies job boards, family or friends referrals and in your professionals network. Position that suits your skills and carrier aspirations. Get ready with resume that reflects what you can do and how that makes a difference to the employer if that position is offered to you. There are many resources on line to look up for great inputs on this topic as well.
Seek referrals form professionals you know which can be shared with your job application.
Be confident you will there in no time!
Good luck!
Thank you so much , it's really helpful.
Pari
Updated
Terence’s Answer
I would suggest beginning with your own network to find people to speak with. You'll want to leverage your contacts to understand the areas you could potentially work in. Within software, like any industry, there are tons of different roles. Understanding the different roles will help you determine where you may best fit.
As you speak with people in the software industry, you'll be able to do more research on job boards and resources (indeed, glassdoor, linkedin) to learning more about the different functions and roles at software companies. I would look for roles that are a good mix of your skills and interests.
I would suggest starting with some internal focus, since you have some good working experience as a teacher for ~10 yrs.
1) What aspects of your role do you enjoy? Dislike? Is it the interaction with students/peers? Is it the process of gaining and spreading knowledge?
2) What parts of your role(s) comes naturally to you? Documenting/writing content? Teaching in front of a large audience?
3) Which parts of your job are harder for you?
The 1st questions above speak to your personality, the 2nd and 3rd are more related to your professional skillset. Having a solid understanding of your own likes/dislikes and your professional strengths and weaknesses are key to building a good career path.
As an example, if you enjoy the teaching aspect of your job, you could be strong fits for roles that're focused on training and developing content. These teams would be commonly referred to as "onboarding", "enablement", or sometimes "professional services". If you don't enjoy the training portions. Conversely, maybe you're looking to do something more singular with less interaction (what I call "screen facing"), like programming.
As you speak with people in the software industry, you'll be able to do more research on job boards and resources (indeed, glassdoor, linkedin) to learning more about the different functions and roles at software companies. I would look for roles that are a good mix of your skills and interests.
I would suggest starting with some internal focus, since you have some good working experience as a teacher for ~10 yrs.
1) What aspects of your role do you enjoy? Dislike? Is it the interaction with students/peers? Is it the process of gaining and spreading knowledge?
2) What parts of your role(s) comes naturally to you? Documenting/writing content? Teaching in front of a large audience?
3) Which parts of your job are harder for you?
The 1st questions above speak to your personality, the 2nd and 3rd are more related to your professional skillset. Having a solid understanding of your own likes/dislikes and your professional strengths and weaknesses are key to building a good career path.
As an example, if you enjoy the teaching aspect of your job, you could be strong fits for roles that're focused on training and developing content. These teams would be commonly referred to as "onboarding", "enablement", or sometimes "professional services". If you don't enjoy the training portions. Conversely, maybe you're looking to do something more singular with less interaction (what I call "screen facing"), like programming.
Thanks Terence, it's really helpful.
Pari
Updated
Atul’s Answer
You have been teaching for ten years and I am sure you know what industry you would like to work, ie financial, social media, cyber security or something else.
Post on LinkedIn to share what you know.
Use Medium.com too.
One option to ponder is to work for a startup company where you can make a difference. You may not get great salary but you will get stock options.
Google, Amazon, Facebook and other well known companies require that you pass their exams.
I worked in software industry for 30 years and always enjoyed working for small companies - you get to do many things.
Make connections on LinkedIn - this is the best way to get a job.
Ask people to recommend you on LinkedIn from those people who you know well.
Relocate to where employers are looking for people in the software industry. CA, WA, Austin, Denver or Boston.
Or try working for Uncle Sam in DC.
Post on LinkedIn to share what you know.
Use Medium.com too.
One option to ponder is to work for a startup company where you can make a difference. You may not get great salary but you will get stock options.
Google, Amazon, Facebook and other well known companies require that you pass their exams.
I worked in software industry for 30 years and always enjoyed working for small companies - you get to do many things.
Make connections on LinkedIn - this is the best way to get a job.
Ask people to recommend you on LinkedIn from those people who you know well.
Relocate to where employers are looking for people in the software industry. CA, WA, Austin, Denver or Boston.
Or try working for Uncle Sam in DC.
Thanks for your advice.
Pari
Updated
Sheen’s Answer
Pari, great question. Here are some suggestions and advice:
a) First, determine what part of the software world you enjoy. For example, "software" world doesn't have to mean just coding but could be how to 'glue' different software components together to work for specific use case(s). If you're not sure, then suggest starting with some coding languages you enjoy and start with small projects that range from coding to integrating software together.
b) Gain some experiences that you feel would have applicability to job positions you would be interested in. Many companies will give you training on specific code languages but the key is to understand the fundamentals of software development since then one can pick their favorite coding language to do software development. You may also may find you don't need to do in depth coding (millions of code lines) to integrate different software together.
Best of luck!
a) First, determine what part of the software world you enjoy. For example, "software" world doesn't have to mean just coding but could be how to 'glue' different software components together to work for specific use case(s). If you're not sure, then suggest starting with some coding languages you enjoy and start with small projects that range from coding to integrating software together.
b) Gain some experiences that you feel would have applicability to job positions you would be interested in. Many companies will give you training on specific code languages but the key is to understand the fundamentals of software development since then one can pick their favorite coding language to do software development. You may also may find you don't need to do in depth coding (millions of code lines) to integrate different software together.
Best of luck!
Thank you Sheen for your advice.
Pari
Updated
Rick’s Answer
I would start with deciding which area of software development you would like to enter (Cloud, Big Data, Cybersecurity, AI, etc) and look which certification exists that are relevant to that field. This will increase your knowledge base, show perspective employers that you are prepared for the job, and give you a strong head start in your job search. Getting involved in an open source project may be another way to expose yourself to the industry. Many large companies participate in open source development and contributing to one of the projects they are interested in will definitely put you on their radar and it will also boost your resume by having a publicly accessible portfolio to share with employers. Lastly, participating in open source will expose you to the latest technologies and best practices.
Updated
Ian’s Answer
Decide first what you'd like to do: Software Engineer? Software Developer in test? Product Manager etc...
Then start talking with recruiters and / or target companies with Grad programs as that's a great way in the door
Then start talking with recruiters and / or target companies with Grad programs as that's a great way in the door
Updated
Kavita’s Answer
Network with people you know work in the Software industry and learn the different roles they play. Ask them questions about what they do and what they did to get there. If something interests you, then you already know a path to get there; additionally, search the internet to get information about it. Sign up for a free course that is available on the internet to learn more about what interests you.
Updated
Manuel’s Answer
Good answers above, I'll suggest another advice:
Find an opensource project you like, study its source code and try to colaborate with the people involved in developing the code. Maybe they ask you just to document, or translate messages, but you will learn and establish contact with that people.
Try to suggest changes to the design, correct bugs, etc. in order to gain confidence and be more involved in that project, or start your own opensource project.
Find an opensource project you like, study its source code and try to colaborate with the people involved in developing the code. Maybe they ask you just to document, or translate messages, but you will learn and establish contact with that people.
Try to suggest changes to the design, correct bugs, etc. in order to gain confidence and be more involved in that project, or start your own opensource project.
Miranda Tsang
Identify customer values and empower team members to do their best
1
Answer
Markham, Ontario, Canada
Updated
Miranda’s Answer
Software industry is a very exciting field to work at. You may already know that it has so many areas you can contribute like education, urban planning, hospital, entertainment, communication, etc. The key is to help human to analyze data and make better decision for better life.
Base on my experience, the most important is to find out which areas of computer science that you have passion with and want to learn more. For example, look back to your master thesis that you spent lots of time and research in, think about which courses or assignments you felt most rewarding and had sense of achievement after you spent days and nights. When you have the sense of achievement at the end of the day, you get the right one.
Starting with a profile in LinkedIn and let people know your experience and achievement in your teaching professional career. Remember that soft skills are more valuable and important as technical skills. In our computer science world, we need people that not just for coding but know how to work as team and manage conflict and stress. Many HR people will contact you once they see your skillsets. That is how you build your network and keep in touch with many industry leaders.
Start with a startup company is a good way to learn while building your career path. This is definitely my own experience and gave me many opportunities to work with different talented people and learned from them.
Best of luck and hope it helps !!
- Miranda S.F. Tsang
Base on my experience, the most important is to find out which areas of computer science that you have passion with and want to learn more. For example, look back to your master thesis that you spent lots of time and research in, think about which courses or assignments you felt most rewarding and had sense of achievement after you spent days and nights. When you have the sense of achievement at the end of the day, you get the right one.
Starting with a profile in LinkedIn and let people know your experience and achievement in your teaching professional career. Remember that soft skills are more valuable and important as technical skills. In our computer science world, we need people that not just for coding but know how to work as team and manage conflict and stress. Many HR people will contact you once they see your skillsets. That is how you build your network and keep in touch with many industry leaders.
Start with a startup company is a good way to learn while building your career path. This is definitely my own experience and gave me many opportunities to work with different talented people and learned from them.
Best of luck and hope it helps !!
- Miranda S.F. Tsang
Updated
Dominic’s Answer
Transitioning from academia may seem challenging. However, you already have the qualifications to join the software industry. Apart from your knowledge in software development from your CS degree, traits like acting with a sense of urgency and ownership, accountability to ourselves and others, and attention to detail are highly valued in the corporate world. Soft skills in effective communication, leadership, and teamwork are also valued greatly. As a member of the teaching profession, these traits and skills are expected of you and come perhaps naturally to you. They set you apart from most of the other people interested in the same position.
My advice to you is to choose which area in the software industry that you are most interested in (cybersecurity, data science, full-stack engineering, database admin, system admin, etc) and take a step to apply to several opportunities. Before you interview for a position, make sure you do enough practice. If you fail in one interview, learn from it and do better in the next interview. You will learn the specifics of the job that are not taught in any classroom and the industry jargon once you start. All you need to do is keep an open mind and be willing to learn new things on the job.
Select the industry that you are most interested in
Apply to several opportunities
Prepare for behavioral and coding interviews by practising
Be confident that you have what it takes to become a software engineer
My advice to you is to choose which area in the software industry that you are most interested in (cybersecurity, data science, full-stack engineering, database admin, system admin, etc) and take a step to apply to several opportunities. Before you interview for a position, make sure you do enough practice. If you fail in one interview, learn from it and do better in the next interview. You will learn the specifics of the job that are not taught in any classroom and the industry jargon once you start. All you need to do is keep an open mind and be willing to learn new things on the job.
Dominic recommends the following next steps: