问HN:软件工程在未来几年将朝哪个方向发展?
至少在过去半年里,我时常在思考软件工程的未来方向。关于我的业余项目,我现在使用Cursor/Claude Code来实现我的愿景(一个自2013年以来的数据库系统,作为在康斯坦茨大学项目的延续),进行我一直想做的大规模重构,但由于这将是一个耗时多年的重大工程,我一直没有动力去开始。如今,在人工智能代理的时代,这一切变得非常令人印象深刻,因为在很多情况下,确实存在非常重复的模式,此外还有一些我从未有时间(和技能?)自己解决的问题。当然,有时候测试没有意义,有时它们会出错(例如,宁愿删除测试或“简化”它们,而不是修复真正的生产代码问题……)。但另一方面,我在AI代理的帮助下构建了一个完整的前端(而我是一名后端工程师,一直以来都具备一些嵌入式软件工程的专业知识)。
话虽如此,每当我找到一些时间,我就能更高效地推进我的愿景(主要作为产品负责人兼架构师,而不是“手动”编写所有内容)。因此,我当然在想我们的工作在未来是否安全。我认为,你始终需要对代理进行严格指导,并在它们即将失控时立即制止,因此你必须具备高级软件工程师的技能;但另一方面,我相信小型高级工程师团队的效率可以比以往更高。因此,要么是未来你需要的软件工程师数量会减少,要么是你能够更快地交付产品,实施更多的创意,或者只是说新的创意可以比以前更高效地被探索——这意味着会有更多的小型初创公司?我真的不知道……
查看原文
Since at least half a year now, I'm often times asking myself where we're moving towards regarding software engineering. Regarding my spare time projects I'm nowadays using Cursor/Claude Code to work on my vision (a database system since 2013 as a continuation of a project at the University of Konstanz) to do big refactorings I always wanted to do, but never found the drive to start as it would have been a major multi-year effort. Now, in the age of AI agents it's really impressive, as of course there are often times very repetitive patterns, but also regarding other issues I never had the time (and skills?) to solve myself. Of course, sometimes the tests make no sense, it's going haywire sometimes (for instance rather deleting tests or "simplify" them, instead of fixing real production code issues...). But on the other hand I built a full frontend with the help of AI agents (and I'm a backend engineer, always have been with a little embedded software engineering expertise).<p>That said, whenever I find some time, I can work on my vision much more efficiently (mostly as a product owner + architect in one person rather than writing everything "by hand"). So, I of course wonder if our jobs are safe in the future. I think you'll always have to heavily guide the agents and stop them immediately whenever they're about to get haywire and thus you have to have the skills of a senior software engineer, but on the other hand I'm sure that small teams of senior engineers can be much more efficient than before. So, either it's that you'll need less software engineers at some point, or if it's rather that you can deliver products faster with more ideas implemented or simply that new ideas can be explored much more efficiently as before => more small startups?). I really don't know...