高级全栈开发人员职位详情 部门 技术 工作地点 阿布扎比,阿拉伯联合酋长国 汇报经理 工程部负责人
工作目的 全栈开发人员必须具备强大的API和微服务开发技能,并在以软件为基础的产品上与开发人员、设计师和研究人员组成的跨学科敏捷团队中有效合作。高级角色提供技术领导力,与团队密切合作,确保按照项目目标和交付周期交付高质量代码。该角色与设计师密切合作,交付快速原型以及高度符合可访问性标准的生产代码。合格的候选人应能够展示对现代框架和语言的熟悉,以及如Clean Code、TDD、BDD、持续集成、持续交付和DevOps等工作实践的熟悉。
主要职责 职位特定职责 框架构思
o 从客户会议或市场调研中概念化制定框架,从而提出简明的先决条件。
o 规划交付、冲刺、迭代,并评估所需资源和成本,根据要求组织任务。
o 设计系统架构。
创建应用程序和领域模型
o 设计和规范化数据库。
o 应用设计模式进行设计优化。
o 选择构建解决方案的技术栈。
o 创建应用程序和领域模型。
系统和用户之间的协作
o 构建软件并编写单元测试(如果有)。
o 设计和改进系统与用户之间的交互。
编写清晰的代码:
o 全栈工程师应该在技术栈的所有层面都具备技能 - 可能是前端设计和行为、中间件、后端、数据库查询等等。
o 创建自动化或手动测试套件来全面测试错误。
与内部团队合作
o 与开发人员、设计师和产品经理合作,确定新功能。
o 在功能概念化过程中积极提供建议。
o 根据要求定制功能,利用本机Android资源和模式。
o 积极提供建议。
o 协助预算编制过程。
教育背景、经验和所需技能 教育资格
o 计算机科学、软件工程或相关学位优先 过程与实践
o 敏捷
o Scrum/Kanban/Lean
o TDD/BDD
o CI/CD
o XP 经验
o 至少2年 必备技能
o 遵循Clean Code/Solid原则
o 遵循和使用TDD/BDD。
o 出色的开发高效、可读性强、高度优化/可维护和清晰的代码的能力。
o Scala、Play、Akka、Spray
o 微服务、Rest。
o 消息传递(RabbitMQ、ZeroMQ、ActiveMQ或其他类似的消息队列)之一。
o 模拟(以下任意一种:Mockito、ScalaTest Spock、Jasmine、Mocha)。
o IDE Intellij或Eclipse。
o 构建工具(SBT、Gradle、Maven之一)。
o SQL数据库(Oracle、MS SQL Server或Postgres之一)。
o NoSQL MongoDB。
o 确保构建的所有软件稳健可靠、可扩展。
o 有构建服务器端Web应用程序的经验。
o 深入理解和经验前端Web开发(HTML/CSS/JS)。
o 了解和经验使用一系列测试应用代码和系统行为和性能的方法(Selenium、Geb、Wiremock、Jmeter、Gatling、Sauce Labs之一)。
o 能够将技术概念传达给非技术人员的能力。
o 熟悉类Unix操作系统(如Linux和/或Mac OS X)。
o 了解git版本控制系统。
o 快速研究和学习新的编程工具和技术的能力。
o 理解响应式网页设计的使用。
o 对无障碍标准有深入了解,并开发易于使用的Web产品,以满足各种辅助技术需求的用户。 期望技能
o 在非线性管理职位上指导和培训其他开发人员。
o 指导或帮助同事优化他们的代码的经验。
o 关系型和非关系型数据库系统的知识。
o 系统管理和配置管理技能
o 其他JVM语言(Groovy、Scala、Clojure、Kotlin等)。
o 在用户组、商业和同行面前展示工作的经验。
o 构建和扩展高流量网站的经验。
o 处理大数据集并扩展其处理和存储的经验。
o 使用JavaScript库的经验。
o 设计和维护公共HTTP API的经验。
o 处理大数据集并扩展其处理和存储的经验。
o Ruby。
o 其他NoSQL数据库,如Neo4J、Cassandra、Redis等。