Senior Research Scientist, Computational Linguistics, CCLAW
- Bachelor's Degree or equivalent | Master's or equivalent | Doctorate or equivalent
- Singapore | Closing On 28 Oct 2022
Singapore Management University is a place where high-level professionalism blends together with a healthy informality. The 'family-like' atmosphere among the SMU community fosters a culture where employees work, plan, organise and play together – building a strong collegiality and morale within the university.
Our commitment to attract and retain talent is ongoing. We offer attractive benefits and welfare, competitive compensation packages, and generous professional development opportunities – all to meet the work-life needs of our staff. No wonder, then, that SMU continues to be given numerous awards and recognition for its human resource excellence.
Work done will be at the direction of the PI, and where relevant, the Industry Director and Centre Director. As the Programme is interdisciplinary and multidisciplinary by nature, you will be expected to convey your domain expertise and edify others (and vice versa) in as productive, constructive, and collaborative a manner as possible.
You may be asked to participate in the development of use cases and delivery of proof-of-concept prototypes for government and industry partners in the areas of computable contracts and "rules as code". Experience in requirements analysis and agile, iterative methodologies will be useful at this stage.The work of the team will be largely determined by these use cases and customers. We will work with multiple use cases so that we can abstract across them and develop generalized, reusable infrastructure. We will work with specific customers so we can build useful applications on top of that infrastructure.You will contribute to the design and development of open-source software written to serve those use cases.You will work as part of a team of research engineers, developers, and domain expertise and you will be expected to actively participate in team meetings and text-based communications. You will be expected to be active members of the applied research community, by validating and contributing to advances in computational law.
You may be asked to conduct use-inspired research at the direction of the Principal Investigator. This includes
- creating presentations, recordings, walkthroughs, etc. to document and explain research work done and development methodology in your field of expertise; and
- reviewing academic papers and materials for publication.
You will be expected to participate in software development as a supervisory domain expert, this includes:
- building infrastructure and strategising development approaches to enable application development;
- being available as an adviser in your field of domain expertise to other team members;
- preparing presentations to represent the project before external audiences; and
- writing actual user-facing applications throughout the "full stack",
in each case, documenting, reporting, and/or presenting the same in clearly and efficiently, both internally and externally.
Researchers under the Programme should possess both mastery of their academic speciality, and demonstrated practical experience producing and supporting high-quality open-source code through community engagement across multiple media. Candidates must have Bachelor's, Master's, Ph.D., or alternative qualifications in computer science, software engineering, (symbolic) artificial intelligence,computational linguistics, or formal methods.
Fluency in multiple natural languages, and any experience with law, are a plus.us.
Open-Source Software & Open-Standard Infrastructure Engineering
Internet · Unix · TCP/IP · HTTP(S) · XML · JSON · Schemas · YAML · Git · Github · Technical Writing · Developer Relations and Evangelism
Parsers, Compilers, and Programming Language Theory
Lex/YACC · alex/happy · Bison · CFGs · EBNF · BNFC
Test-Driven Development · Continuous Integration · Software Project Management · Agile / XP / Scrum · Pair Programming · Literate Programming · Unit Testing · Amazon Web Services · Docker · Full-Stack Development
Programming Languages and Frameworks:
Preferred: Haskell or OCaml. Python.
Computational Linguistics – Natural Language Generation
Familiarity with: WordNet · FrameNet · SenseNet · Controlled Natural Languages · Attempto Controlled English · ACErules
Formal Verification and Specification Languages
Some familiarity with any of: TLA+ · Alloy · IVy · B Method · Z notation · VDM++ · LTL ·
Theorem Proving and Strongly Typed Languages:
CoQ · Agda · Idris · Lean Prover · F* · Advanced Haskell (Template etc) · OCaml · Elm · Isabelle/HOL · StrangeLoop · Pony
Model Checkers and SAT/SMT solvers: Z3 · PAT · SMTlib · NuSMV · SPIN · Sentient
IDEs, Language Workbenches, and PLT frameworks: K Framework · JetBrains MPS · IDEs (Vim, Emacs, Visual Studio Code, Atom, Sublime Text) · Language Server Protocol
Rule Systems and Logics
Model Driven Architecture: UML · BPMN · DMN · OCL · SBVR · Statecharts · Activity Diagrams · Parnas Tables
Logics: Hoare Logic · Kripke structures · Modal mu-calculus · Dynamic Logic · Deontic, Temporal, and Epistemic modals · Situation Calculus · Process Calculi · Multivalent logics · Defeasible Logic · BDI · Abductive Logic · F-Logic · Intuitionistic · Non-monotonic Logics · Skolemization · Well-Founded Semantics
Good Old-Fashioned Artificial Intelligence and Semantic Web
Knowledge Representation and Reasoning: Lisp · Prolog · F-Logic · Flora-2 · Datalog · Answer-Set Programming · Defeasible Logic · Expert Systems · DocAssemble · lps.doc.ic.ac.uk
Semantic Web and Ontologies: RDFa · RDFt · RDF · RIF · SWRL · OWL · Cyc · KBpedia · SUMO · UFO · Protégé