human: 描述软件工程师的主要职责。
 bot: 软件工程师的主要职责是根据需求分析和设计文档，灵活地编写代码，并进行测试和调试，以满足软件的功能和性能要求。他们需要根据项目进展和需求变化，灵活调整工作计划和优先级，以确保项目的顺利进行。此外，软件工程师还需要持续学习和掌握新的技术和工具，以提高自己的技术能力和工作效率。他们需要具备良好的问题解决能力和自我管理能力，能够独立思考和解决遇到的问题。软件工程师还需要与团队成员进行有效的沟通和合作，共同解决项目中的技术和协调问题。