Beyond code generation using large-scale language models (LLMs), this paper explores the potential of AI agents to perform various software engineering tasks, including code generation, testing, program modification, architecture exploration, and requirements understanding and enforcement. We present a vision of an "AI software engineer" in which AI agents, supported by program analysis tools, autonomously make micro-decisions and function as members of a development team. Specifically, we highlight the importance of "spec inference," which captures developers' intent, as a key element in developing trustworthy AI-based software workflows, and the importance of trust in AI agents and AI-based verification and validation (V&V) in automated software engineering.