Should I take 4 years for a bachelor's degree or should I make sure I'm fully invested into this career?
Hi, I'm working hard to become a Software Developer. I have yet to get my bachelor's degree but I have finished school and I have my diploma. I have enrolled in Job Corps originally as a sound engineer I have worked on editing sound for podcasts and I wanted to jump off of that into a career but they didn't have that trade so I wanted to do something else. I have been working on My Pace. Com and I found something similar to sound engineering and it is Software developer I figured I could do research on this career and have some type of experience. My problem is I don't have my bachelor's degree which takes about 4 years of work. Also, I would like to know what do you like and not like about software development?
First, I am someone who went to college for 5 semesters, then dropped out. I went to work in the real world and returned to college after 7 years. Then I went on to finish an AS in Computer Information Studies, BA in Information Studies and an MLIS in Library and Information Studies. I started working as a web developer while I was starting my Master's program and never worked in a library. The question you may be asking is, "was it worth it"? The answer is "yes", because each interaction I encountered, each course I took, rounded out my knowledge to be able to understand the world better, perform better, and communicate better.
Second, if I knew then what I know now, would I take another path? Probably. I learned more programming in my Associates program than I did in all the rest of the courses combined. It was enough to get me into a job to gain experience to keep moving up the ladder. What I don't know, is if there would have been a "ceiling" on how far I could move up in the company without the additional degrees. Completing a degree is a tangible way of showing you can "complete a large project" - a project that has many roads and distractions, and many pitfalls that can trip you up.
Third, no matter what you decide to do, it should be something you love to do. Working can be a grind, so if you cannot enjoy it most of the time, what is the point. Be aware that no matter where you work, there are "dues to pay". Meaning, you aren't going to become a "senior level" person one year into your journey. It takes time to move up the ladder and everyone who came before you had to do it too. I would assume you are above average in intelligence just like the rest of your future colleagues, which makes you all average employees in the discipline you are in. Remember that and learn from all of them the best you can. Technical people are a different bunch with wildly different personality types. Some will be easy to have a good relationship with and others will not be. All of them will have knowledge that can help you become better, no matter which path you chose.
Here in Europe, diplomas really make a difference.
Most importantly, even after having some experience and able to perform as good as a bachelor or engineer, salaries are not at the same level.
In addition, later on when deciding to move to a senior or architect position, again diplomas are very often required (despite some companies tend to be more flexible on the long term).
This is my view of 40 years in the software industry. I am retired now.
If you have a degree you will have the least path of resistance to land a job.
Small companies may waive the requirements for not having the degree but do not limit yourself.
Not everyone is Bill Gates or S Jobs who did not finish college.
I have a friend who struggled mightily when he was laid off from a small company and could not find the job in the pandemic. He did not have a degree.
Do not incur student loan debt - go to state univ and keep the tuition fee low. If you get the scholarship then only try private univ.
You have some great questions. I have broken down my understanding of your status and questions below with my thoughts and recommendations.
Education and training:
High School Diploma or equivalent
1) Enroll in 4 year university/college/community college plan
2) Enroll in Job Corps / MyPACE
3) Combination of both
Primary - Sound engineering
Secondary - Software Development/Software Engineering/Computer Programming or related field
1) You are seeking guidance in choosing a career path that follows your interest of sound engineering based on your experiences in podcast audio editing, but you have not found a match for this trade field and your skillset within Job Corps.
2) As an alternate path, you believe that software development may be the closest to sound engineering and have started advancing your training in this area on MyPACE.com.
3) You expect that to be able to find an opportunity to fit in with your interests, you may need to pursue a 4 year plan to achieve a bachelors degree.
QUESTION 1: Is software development going to help you advance into your sound engineering career path goals?
Before discussing sound engineering as it relates to software development, let's review what's involved in software development to see if it interests you.
Software development, as you have likely discovered from your initial research, involves programming/coding and much thought in algorithmic designs. Throughout a complete curriculum for software development, you would need to thoroughly learn at least the following:
* Computer and Operating System (OS) basics
* Hardware vs. software
* Mathematics as it relates to computer technology (binary, hex, logical operations, and more) in addition to the expectation that you fully understand basic algebra, calculus, and differential equations. If you like math and are very good at it, this may attract you to the field.
* Programming and Advanced Programming (languages vary, but currently popular languages include Java, C, C++, C#, and more)
* Software Development Lifecycle (SDLC)
* Data Structures
* Operating Systems
* User Experience (UX) Design
Assuming that you follow the software development path, your responsibilities may involve understanding customer requirements for functionality and following a continuous lifecycle that includes:
a) Understanding requirements and changes to business needs that result in continuous updates
b) Designing user interfaces (UI) based user experience (UX) requirements
c) Designing logical algorithms to serve as flawless blueprints of the application functionality
c) Building the application entirely from scratch or by integrating with existing applications or services
d) User acceptance testing to confirm functionality and UX requirements are met
e) Performance testing to ensure that required Service Level Agreements (SLAs) are being met or exceeded
f) Staging and pre-production testing
g) Deployment of final application for general availability, i.e. "going live".
h) Analyze customer feedback.
This cycle continuously repeats to not only address new features, but also to address any discovered defects.
How does all of the above relate to sound engineering?
Disclaimer: I am not a sound engineer. I have edited audio in my line of work for technical training and related purposes. Here is what you should consider in terms of your interests and how they align with software development:
Sound engineering is very broad. How would it align with the skills and experience of a software developer?
* You may choose to perform sound processing and editing by leveraging software and specific hardware equipment. This would not require you to be a software developer, but it may require you to know how to perform some level of programming and/or scripting which you could learn on your own or through specific training.
* You may leverage your experience and skills to design and build the equipment. This would not require you to be a software developer, but may require electrical and/or computer engineering skills.
* You may choose to develop the software for sound processing and editing whether for your own business or as an engineer in another company. This would require you to be a software developer.
* You may choose to become a Product Management Director/Lead for a software development team to roll out new software products. This requires experience in understanding the software development lifecycle and having worked with customers to understand customer requirements, trends, and to fulfill feature requests. Usually, a 4 year degree is expected.
* You may choose to guide customers in using standard and recommended practices for proper sound processing and editing while promoting specific software and/or equipment, i.e. as a sales engineering consultant at a particular product vendor/company. This would not require software development experience, but it would require deep technical experience in understanding the products very well.
* You may choose to deliver training to sound engineers, regardless of experience level, on how to use software, equipment and also on how to implement best practices. This would not require software development experience.
QUESTION 2: Does software development require a 4 year degree plan, i.e. attaining a bachelors degree?
Should you attend a 4 year college and attain a Bachelors Degree in Software Development? There is no simple answer for this regardless of what major or trade you are pursuing. It depends on your interests and life circumstances. Most technical community colleges offer software development courses and allow for transfer of credits to a 4 year school. If you value a degree from a highly accredited school, then you may decide that a 4 year school is the way to go.
Bachelor degree (4 year) programs go beyond learning only about software development. In a typical engineering school, you will see that prerequisites are similar for all engineering and technology majors. This means that passing multiple levels of advanced math courses, various science courses that include physics and chemistry, and more are required for graduation. You also gain access to the latest cutting edge technology and can be part of innovative startups because colleges are centers of research with funding and grants from many different sources.
Of course, there are other courses that are completely unrelated which you would also need to complete and successfully pass such as literature courses, humanities and social sciences, etc.
Going to a 4 year school can help you build experiences and gain skills beyond just technical knowledge. It is meant to enrich your overall life by encouraging participation in extracurricular activities, networking and meeting new friends, and guiding you in finding new interests that may change your career path. It is quite possible that all of the side activities in a 4 year college would lead you to discover that you want to pursue a different career path whether related or unrelated. Many people then continue beyond 4 years because their interests drive them to follow new career paths to completion.
You can always try a community college first if you are not firm on your plans and focus on your specific interests there before deciding whether or not to transfer to a 4 year Bachelors Degree program. If you are not interested in a 4 year plan and are not interested in community colleges, you also have the option to attend virtual training from various online sources, including free courses online from prestigious universities such as Stanford University.
QUESTION 3: What are likes and dislikes about software development and associated careers?
I graduated with a Bachelors Degree in Computer Science and enjoyed designing algorithms and coding out the corresponding application. Yet, I never had to develop any software applications in any of my roles. This means that my degree has afforded me the flexibility of experience diverse roles which required that I only have the technical knowledge of software development and the industry practices. It shows that a degree is very flexible in opening doors for different opportunities.
I have worked in tech companies that have focused on software development in addition to other products and services for over 15 years. I have held roles that include technical software customer support, customer technical software training, sales solutions engineer, and internal sales engineer training curriculum development.
I cannot directly speak to what software developers like and do not like, but I can share how they work and the pros and cons.
* Software development roll outs are expected to occur at very tight and specific deadlines. This places much stress and pressure on software developers to complete and test their application rollouts and/or application updates with a minimal viable product (MVP) mentality. This means that not everything is perfect in the latest release, but ongoing updates and fixes will address issues or missing features in upcoming rollouts.
* Software developers often work beyond the typical 40 hour work week out of necessity to not only meet deadlines but also to address software bugs, but they usually have above average salaries depending on company and years of experience from the low $100k/year range to potentially reaching over $700k/year.
* Software developers must continually collaborate with each other to complete assigned projects without overstepping on colleague efforts. This requires enforcement of governance procedures and results in regular status meetings for individual contributor updates. It's a necessity, but it doesn't necessarily mean that anyone enjoys it.
* Often times, depending on company policies, it is possible that software developers go offline/ take time off for weeks at a time with management approval as a reward after successful major software updates or rollouts. Consider this a perk that is rare within many other trades.
QUESTION 4: What are recommendations for getting into sound engineering if Software Development is not your area of interest?
Depending on your experience level, you may decide to volunteer your sound engineering skills free of charge within your local community or to remote organizations that you enjoy using. This will help you become even more familiar with the diverse options that are available to you. Often times, you will see that after volunteering your skills for a while, you may receive an offer to join the team as a paid employee.
There are many sites that offer free training on programming as well as universities that provide their curriculums to the public for free via pre-recorded training deliveries. I recommend you check them out.
I hope this helps and wish you the best.
Arash recommends the following next steps: