Domain Engineer
No current positions

Job Description: Domain Engineer

Experienced software engineers who are willing to learn domain engineering are needed.

Semantic Designs offers DMS, a sophisticated software engineering environment supporting two significant, systems engineering activities:

  • Application Engineering: the use of previously captured application domain knowledge in the semi-automatic transformation of specifications into application programs and subsequent maintenance of these specifications and applications;
  • Domain Engineering: the capture and validation of application domain knowledge used in Application Engineering.

In DMS, a domain is a collection of knowledge organized as:

  • application notational definitions: the domain’s language, including syntax and (optional) semantics;
    Such a domain may be a conventional language such a COBOL, or an unconventional language for factory automation
  • implementation definitions: the domain’s means for realization in terms of other domains which are "closer" to the target implementation.

Thus DMS promotes comprehensive reuse, both application knowledge and implementation knowledge.

Domain Engineering (DE) is the process of analyzing software systems for the concepts, notations and implementation methods, and codifying that knowledge in a reusable form (in this, packaging that knowledge for use by DMS). As part of a domain engineering (DE) team, s/he will apply DE to real-world, large scale software application systems. The result of this activity will be used by application engineers to generate and modify customer software systems. This position requires moderate travel to customer sites to interact with a customer at a technical level. The candidate will be individually responsible for implementing large portions of the domain, and possibly applying that domain to customer problems.

The ideal candidate will have a Masters in Computer Science, good experience with modeling and implementing reactive systems, and some background in compiler theory. Knowledge of domain analysis techniques is a definite plus. The candidate will also spend considerable time building task-specific tools and enhancements to be integrated into DMS, in conjunction with the core DMS team. Experience with parallel programming, optimizing compilers, transformation engines or various formal specification techniques such as algebraic or denotational semantics are a definite plus. Experience in R&D projects producing large, robust systems is a plus. Applicants must be independent thinkers and strongly self-motivated but must work with both the internal DMS development team, application engineers and our customers to achieve a final vision. A variety of other programming language analysis, translation and analysis tasks are included in the long term aspects of this job.

In addition to competitive salaries commensurate with experience, employees will be offered a comprehensive benefits package.

Applicants must be interested in long-term positions; no contractors, please.

Semantic Designs, Inc.
13171 Pond Springs Road
Austin, Texas 78729
FAX: 512-250-1191

For more information:    Follow us at Twitter: @SemanticDesigns