Greater Montreal Metropolitan Area
1K followers 500+ connections

Join to view profile

About

I have experience in both software design and implementation. I have worked in a vast…

Activity

Experience & Education

  • Optable

View Amanj’s full experience

See their title, tenure and more.

or

By clicking Continue to join or sign in, you agree to LinkedIn’s User Agreement, Privacy Policy, and Cookie Policy.

Licenses & Certifications

  • Academic Rank: Assistant Lecturer

    Salahaddin University

    Issued
  • UPMARC Summer School 2011

    UPMARC Research group at Uppsala University

    Issued

Volunteer Experience

  • TEDxErbil Graphic

    Volunteer at Speakers Organizing Team

    TEDxErbil

    - 9 months

    Science and Technology

    I volunteered for arranging the first ever TEDxErbil event, I worked as a translator from English to Kurdish and vice versa.

    http://tedxerbil.com

  • Mentor

    ZuriHack

    - Present 10 years 11 months

    Science and Technology

    I was a mentor in ZuriHack '15 which took place at Google. ZuriHack is an annual Haskell focused hackathon.

Publications

  • A Refactoring Library for Scala Compiler Extensions

    Compiler Construction Conference '15

    Compiler plugins enable languages to be extended with new functionality by adding compiler passes that perform additional static checking, code generation, or code transformations. However, compiler plugins are often difficult to build. A plugin can perform arbitrary code transformations, easily allowing a developer to generate incorrect code. Moreover, the base compiler assumes many complex, sometimes undocumented invariants, requiring plugin developers to acquire intimate knowledge of the…

    Compiler plugins enable languages to be extended with new functionality by adding compiler passes that perform additional static checking, code generation, or code transformations. However, compiler plugins are often difficult to build. A plugin can perform arbitrary code transformations, easily allowing a developer to generate incorrect code. Moreover, the base compiler assumes many complex, sometimes undocumented invariants, requiring plugin developers to acquire intimate knowledge of the design and implementation of the compiler. To address these issues in the context of the Scala compiler plugin framework, we introduce Piuma. Piuma is a library that provides, first, an API to perform many common refactoring tasks needed by plugin writers, and, second, a DSL to eliminate much of the boilerplate code required for plugin development. We demonstrate the usefulness of our library by implementing five diverse compiler plugins. We show that, using Piuma, plugins require less code and are easier to understand than plugins developed using the base Scala compiler plugin API.

    Other authors
    See publication
  • Mobile vs. Desktop Programming Projects: The Effect on students

    PROMOTO '14

    Programming projects are a common component of computer science curricula. In this paper we investigate how the decision of using a mobile and touch versus a desktop platform affected students. We ran two sets of programming projects, one developing desktop applications, the other developing mobile apps. Several months after the conclusion of the projects, we interviewed the students about their experiences. We found that our initial expectations regarding an increased student motivation were…

    Programming projects are a common component of computer science curricula. In this paper we investigate how the decision of using a mobile and touch versus a desktop platform affected students. We ran two sets of programming projects, one developing desktop applications, the other developing mobile apps. Several months after the conclusion of the projects, we interviewed the students about their experiences. We found that our initial expectations regarding an increased student motivation were not completely met. We discuss the specific issues we uncovered, and the lessons we learned.

    Other authors
    See publication

Languages

  • Kurdish

    Native or bilingual proficiency

  • English

    Full professional proficiency

  • Arabic

    Professional working proficiency

  • Italian

    Limited working proficiency

  • French

    Elementary proficiency

Recommendations received

  • LinkedIn User

    LinkedIn User

1 person has recommended Amanj

Join now to view

View Amanj’s full profile

  • See who you know in common
  • Get introduced
  • Contact Amanj directly
Join to view full profile

Other similar profiles

Explore collaborative articles

We’re unlocking community knowledge in a new way. Experts add insights directly into each article, started with the help of AI.

Explore More

Add new skills with these courses