教育与经验要求:
• 计算机科学、电气工程或相关领域的学士学位,需具备 8 年以上工作经验
• 硕士学位需具备 6 年以上工作经验
技术技能
(必需)
• 7 年或更长时间使用 Java17 设计和开发软件应用程序的经验。
在以下多个领域具有证明经验:
• 设计、开发、部署和维护大规模软件
• 使用关系型和 NoSQL 数据库开发软件应用程序
• 应用程序架构模式,如 MVC、微服务、事件驱动等
• 使用 CI/CD 工具(如 Jenkins、Azure DevOps、GoCD 等)部署软件
• 使用公共云(如 AWS 或 Azure)部署和维护软件
• 在敏捷框架(理想情况下为 Scrum)内工作
对以下多个领域有深入理解和/或经验:
• 消息流解决方案,如 AWS Kinesis、AWS SQS、AWS SNS、Apache Kafka、RabbitMQ、Apache ActiveMQ
• 设计良好的 Restful API 的经验
• 使用 API 工具(如 Swagger、Postman 和 Assertible)的实际经验
• 测试驱动开发和行为驱动开发
• 使用测试工具(如 Cucumber 和 Selenium)及其与 CI/CD 管道集成的实际经验
• 数据存储,如 AWS Aurora、AWS RDS、AWS DynamoDB、MongoDB、ElasticSearch、Cassandra、Redis、MySQL、Oracle
• 其他 AWS 技术,如 API 网关、ALB、NLB、Fargate、Lambda、S3、CloudWatch 等
• 在 Linux 或 Unix 平台上调试和维护软件
软技能
(必需)
• 必须具备扎实的计算机科学基础知识,如数据结构和算法
• 能够在压力下工作并遵守时间限制
• 对技术充满热情,渴望为团队合作环境做出贡献
• 在影响战略优先事项的小型到中型项目中展现领导能力
典型任务分解:
• 能够在没有密切监督的情况下执行所有编程、项目管理和开发任务
• 直接处理复杂的应用程序/技术问题识别和解决,包括响应非工作时间和周末的支持电话
• 独立处理可能被一个或多个应用程序或系统使用的复杂系统或基础设施组件
• 驱动围绕提供业务价值的应用程序开发
• 指导和协助软件工程师,提供必要的技术支持和指导
• 通过建立良好的实践和习惯来维护团队内软件质量的高标准
• 在合理的独立研究后,当遇到问题时主动寻求帮助
• 在处理任务时保持紧迫感,积极跟进任何依赖关系或阻碍因素
工作环境:
• 混合工作模式;每周需到办公室 2 次(芝加哥办公室)