AI-Assisted Software Engineering: A Special Topics Course That Could Become Mainstream
Assistant Professor Martin Kellogg in the Ying Wu College of Computing is test piloting a new special topics course in AI-assisted software engineering that aims to give students a competitive edge amidst the rapidly changing AI-driven industry landscape.
CS: 495/698: AI-Assisted Software Engineering is designed to respond to the concern that computing jobs are being replaced by AI. Kellogg and many other computer science experts agree that, while certain jobs may indeed go to the wayside, many other exciting new ones will be created that may be even more rewarding – with the right type of preparation.
Industry is eagerly embracing the ability for AI to reduce time, increase productivity and improve the bottom line. The code that junior software engineers used to labor over can be done by AI in a matter of minutes using Large Language Models (LLMs). It’s been said that, in certain scenarios, present business is seeking orchestrators, not operators. Junior engineers have traditionally been operators in the beginning of their careers. Orchestration, or management, has been and will continue to be done by senior software engineers. Essentially, while some junior positions may be replaced by AI, senior engineers are still needed to manage it through critical thinking, creativity, problem solving, communication and ethical judgement. Instead of managing people, senior engineers are beginning to manage AI.
And this is where CS 495/698 comes in. Offered to BS as well as MS students, the course utilizes what was learned in CS 490: Guided Design in Software Engineering, which includes standard design, coding, and testing, and levels up student skills to better understand how to manage the same work using LLMs.
According to Kellogg, even though many students enter the workforce with the title of software engineer, they don’t actually become one until they are in the job itself, mostly because you cannot train for such things in class. Although lacking practical experience, companies have long known that such new hires can be trained on the job.
Essentially, what the course aims to do is fast track students who are already prepared to assume roles that include planning and managing.
“The class is very hands-on and has students learning by doing. The assignment is to build competitors to existing companies, identify their problems and figure out how to fix them,” said Kellogg.
“A basic Instagram clone that used to take 1,000 lines of hand-written code can now be built with LLMs instantly. The bottleneck becomes checking that the output does what you want rather than the writing of the code itself,” he continued.
Kellogg’s vision also forecasts for the future. In pursuit of immediately improving the bottom line, some companies are not investing in training new senior software engineers. He likens it to “starving the pipeline.”
CS 495/698: AI Assisted Software Engineering is conducted with the goal of developing a senior level engineer directly. The hope is that the pilot class can be developed into a full-scale master’s program moving ahead.