公司描述
新加坡管理大学是一个高水平的专业化与健康非正式相结合的地方。SMU社区中的“家庭般”氛围培养了员工在大学内一起工作、计划、组织和娱乐的文化,建立了强大的同事关系和士气。
我们致力于吸引和留住人才。我们提供有吸引力的福利待遇、竞争力的薪酬方案和丰富的职业发展机会,以满足员工的工作与生活需求。难怪SMU一直以来都因其人力资源卓越而获得众多奖项和认可。
职责
工作将按照PI(项目负责人)的指示进行,如有必要,还将按照行业总监和中心主任的指示进行。由于该项目的跨学科和多学科性质,您将被期望以尽可能富有成效、建设性和协作性的方式传达自己的领域专业知识,并使其他人获益(反之亦然)。
您可能会被要求参与制定使用案例并交付政府和行业合作伙伴的概念验证原型,涉及可计算合同和“规则即代码”领域。在此阶段,具备需求分析和敏捷、迭代方法的经验将非常有用。团队的工作将在这些使用案例和客户的基础上确定。我们将与多个使用案例合作,以便能够对它们进行抽象并开发通用、可重用的基础设施。我们将与具体的客户合作,以便能够在该基础设施之上构建有用的应用程序。您将为设计和开发开源软件做出贡献,以满足这些使用案例的需求。您将作为研究工程师、开发人员和领域专业知识团队的一部分工作,您将被期望积极参与团队会议和基于文本的沟通。您将被期望成为应用研究社区的积极成员,通过验证和贡献计算法律的进展。
您可能会被要求根据主要研究员的指示进行用途驱动的研究,包括:
• 阅读学术论文、标准出版物以及相关材料,如博客文章和演示文稿;
• 在可能是您新领域的领域中迅速掌握,例如计算语言学、数理逻辑、程序设计语言设计、形式验证和模型驱动架构;
• 阅读(并更新/评论相关的)现有软件文档;
• 创建演示文稿、视频录制、演练等,以记录和解释研究工作;
• 编写(并在PI决定的情况下进行演示)学术论文和出版物的材料;以及
• 以足够详细的方式记录,以便分享您所学到的知识。
您将被期望参与软件开发;这包括:
• 学习如何使用第三方工具,包括编辑器、集成开发环境、数据库、业务流程建模软件、编程语言和库;
• 评估适用性的竞争软件系统;
• 构建基础设施以支持应用程序开发;
• 管理自己和团队成员;
• 根据需要参与产品、项目和程序管理;
• 阅读关于软件开发的书籍和其他媒体形式;
• 编写用户/开发者手册、教程等文档;
• 向用户和客户提供社区支持;
• 准备演示,代表项目向外部观众展示;
• 在每个案例中编写面向用户的实际应用程序,同时在内部和外部清晰高效地记录、报告和/或展示。
资格要求
该项目的研究人员应具备其学术专业的掌握能力,并通过多媒体的社区参与来展示生产和支持高质量开源代码的实践经验。候选人必须具有计算机科学、软件工程、(符号)人工智能、计算语言学或形式方法的学士、硕士、博士学位或其他资格。流利掌握多种自然语言,并具有法律方面的经验将是一个优势。
此专业角色需要以下领域的技能(每个类别中的一个或两个即可):
开源软件和开放标准基础设施工程 互联网 Unix TCP/IP HTTP(S) XML JSON Schemas YAML Git Github 技术写作 开发者关系和推广
编程语言和框架:首选:Haskell或OCaml。Python。可能的替代方案:Common Lisp Racket Scheme Javascript / Typescript / Node。
合同、规则和业务逻辑的形式化:Akoma Ntoso LegalRuleML Petri网 Drools iLog OPA Neota Logic Constraint Handling Rules ICAIL JURIX RuleML+RR
语义网和本体论:RDFa RDFt RDF RIF SWRL OWL Cyc KBpedia SUMO UFO Protg或具有本体支持的商业规则引擎
模型驱动架构:UML BPMN DMN OCL SBVR 状态图活动图 Parnas表 逻辑:Hoare逻辑 Kripke结构 模态μ演算 动态逻辑 法定、时间和认知模态 情景演算 进程演算 多值逻辑 可驳斥逻辑 BDI 归纳逻辑 F-Logic 直觉非单调逻辑 Skolem化 基于良基的语义 传统人工智能和语义网
知识表示与推理:Lisp Prolog F-Logic Drools Oracle Policy Manager Flora-2 Datalog Answer-Set Programming 可驳斥逻辑 专家系统 DocAssemble lps.doc.ic.ac.uk
以下线条下列出的技能是首选但不是必需的:
定理证明和强类型语言:CoQ Agda Idris Lean Prover F* Advanced Haskell(模板等)OCaml Elm Isabelle/HOL StrangeLoop Pony
模型检查器和SAT/SMT求解器:Z3 PAT SMTlib NuSMV SPIN Sentient
IDE、语言工作台和PLT框架:K框架JetBrains MPS IDE(Vim、Emacs、Visual Studio Code、Atom、Sublime Text)语言服务器协议规则系统和逻辑
计算语言学 自然语言生成 计算语义(使用Haskell、Prolog或Lisp)Montague语义语法框架文本规划表面生成熟悉:WordNet FrameNet SenseNet 受控自然语言Attempto受控英语ACE规则
解析器、编译器和编程语言理论 Lex/YACC alex/happy Bison CFGs EBNF BNFC
形式验证和规范语言 对以下任何一种略有了解:TLA+ Alloy IVy B方法Z符号VDM++ LTL CTL
应用程序开发 测试驱动开发 持续集成 软件项目管理 敏捷/XP/Scrum 配对编程 文学化编程 单元测试 亚马逊网络服务 Docker 全栈开发