At least in my program (University of Waterloo Computer Science), there is barely any emphasis on practical things like modern tooling, different roles of a software engineer, etc., with the exception of some of the upper year courses. Instead it is largely theoretical - data structures, calculating runtimes, how the networking stack works, theory of distributed systems, etc. You learn practical things, but only enou…
Software Engineering Grads Lack the Skills Startups Need
131–140 of 181 posts
Re: Software Engineering Grads Lack the Skills Startups Need
#132Re: Software Engineering Grads Lack the Skills Startups Need
#133Re: Software Engineering Grads Lack the Skills Startups Need
#134Re: Software Engineering Grads Lack the Skills Startups Need
#135Isn't this just observing the fact that college isn't the same as work experience, and only provides the base skill-set needed to enter enter the industry? "When you join a startup, there’s a lot of emphasis on the design of the application, reusability and clean code, and the ability to conduct and undergo code reviews, as well as the ability to think of and build systems that can scale based on users and geography"…
Candidly, I would say that college does not even provide the base skill-set. In the Real World(tm) of building software, you will work on systems built over years by other people, many of which have long since left the project or company. The level of integration tests, unit tests, documentation, and automation will depend entirely on the culture of the organization. Databases, low-level I/O, sorting operations, and…
- customer oriented thinking (your not working for artistic beauty, balance technical arts and feature set ROI)
- pragmatism (even though they'll send a few "solve it then make it fast") you don't really get to feel the real pressure of aiming right at a good enough solution.
- optimization, not enough variations on a piece of logic to make it faster or whatever metric you need to optimize.
Re: Software Engineering Grads Lack the Skills Startups Need
#136At least in my program (University of Waterloo Computer Science), there is barely any emphasis on practical things like modern tooling, different roles of a software engineer, etc., with the exception of some of the upper year courses. Instead it is largely theoretical - data structures, calculating runtimes, how the networking stack works, theory of distributed systems, etc. You learn practical things, but only enou…
Software engineering students had to do process and design papers, they (theoretically, at least) learned about agile development, UML diagrams, and all that other SDLC bullshit. As a computer scientist, I instead took fun papers like computer graphics and cryptography.
All the things I missed learning because I did computer science, I picked up as I needed at work. Learning how agile development works doesn't take a semester of reading books, and what you learn in theory about the SDLC at university doesn't reflect reality in any company.
Re: Software Engineering Grads Lack the Skills Startups Need
#137Very funny! "When you join a startup, there’s a lot of emphasis on the design of the application, reusability and clean code, and the ability to conduct and undergo code reviews, as well as the ability to think of and build systems that can scale based on users and geography"? I don't know which startup he worked for that was doing all this and still managing to stay afloat! Startups want you to crank out features an…
On the plus side, I work 38 hours a week and not a minute more, and I get paid above median for the privilege.
Re: Software Engineering Grads Lack the Skills Startups Need
#138Colleges are not here to serve startups. Colleges are to help students build a skill set that will serve them throughout their lives. If a startup does not want to invest in a recent college grad, there are many other more experienced hires they can make. Thinking that free training which is being provided by someone else should fit your custom needs is, well, maybe not the best business case.
Re: Software Engineering Grads Lack the Skills Startups Need
#139Colleges are not here to serve startups. Colleges are to help students build a skill set that will serve them throughout their lives. If a startup does not want to invest in a recent college grad, there are many other more experienced hires they can make. Thinking that free training which is being provided by someone else should fit your custom needs is, well, maybe not the best business case.
College is free?! TIL. I guess in that case nobody can complain.
Re: Software Engineering Grads Lack the Skills Startups Need
#140Isn't this just observing the fact that college isn't the same as work experience, and only provides the base skill-set needed to enter enter the industry? "When you join a startup, there’s a lot of emphasis on the design of the application, reusability and clean code, and the ability to conduct and undergo code reviews, as well as the ability to think of and build systems that can scale based on users and geography"…
Candidly, I would say that college does not even provide the base skill-set. In the Real World(tm) of building software, you will work on systems built over years by other people, many of which have long since left the project or company. The level of integration tests, unit tests, documentation, and automation will depend entirely on the culture of the organization. Databases, low-level I/O, sorting operations, and…
There is little point trying to teach work-related skills in a non-work-related environment. If I wanted to teach a bunch of kids how to work, the university system would not be a good starting point. It is the blind leading the blind, there are potentially literally thousands of people with at best limited work experience all crammed in together. That is not a sane environment for teaching people how to add value to others lives through working.
University is supposed to provide networking opportunities, cross-pollinate interesting theoretical ideas that have limited practical application and provide a feeder ramp into the research community. If universities try to teach employable skills it will be hugely inefficient compared to teaching people skills in entry level jobs.
Anyone trying to learn teamwork in a team of university students is not going to understand teamwork. In real teams it is not unusual to have 1 or 2 centuries of pooled experience in the problem domain being worked on and that creates a completely different dynamic for how the work is divided up and work gets done.