In this paper, we present an engine based on semantic technologies aimed at supporting cloud applications developers, in the tasks of discovering functionalities, APIs, and resources needed for the application development through semantic based agnostic (vendor independent) representations of such application components, and representation of generic programming concepts and patterns, including application domain related ones. It handles, maintains, and exposes to the user in a graphical way the semantic descriptions of application domain concepts, application-related concepts, general design patterns and programming functionalities, specific API implementations and cloud resources, layering the knowledge base in four layers. The semantic engine is a component of the European project mOSAICs framework.The semantic engine architecture includes several modules ( Figure 2):The graphical interface supports the user in expressing the query in graphical mode and presents the results of the query to the user. It uses ontologies to build up a semantic query, represented by means of an internal graph-based representation.An important feature of the semantic engine is its capability to deduce an appropriate parameterized configuration of the cloud application and a generic description of needed IaaS resources. This feature is made possible by the execution of empirical rules that extensively use the semantic description of the application, particularly its design pattern and the description of the critical aspects of the application that need elasticity, such as computational and data complexity of its algorithm. The automatic reasoning feature of the semantic engine is extensively described and exemplified in [31]. In the following, we present a simple example of a rule that provides information on the needed properties of a Virtual Machine that hosts a Web server in a cloud application (Listing 1). This rule, based on the design logic of the application, in this case, a three-tier architectural pattern, and on information about the expected Visitors Peak, aims to provide information to the developer about the properties of the Virtual Machine that has to be acquired from an IaaS provider.The execution of such rules on the knowledge base results in a complete and generic description of the needed IaaS resources for the application. Listing 2 presents a part of such description.