Trabajo con nosotros!

Aporta innovación al clima del mañana

En Clivet, la contribución de cada miembro de nuestro equipo marca la diferencia. Consulta nuestras oportunidades de empleo actuales y descubre cómo formar parte del equipo Clivet.

600+
dedicación
35
sucursales en Italia
90
Países a los que exportamos
7
Filiales en Europa y en todo el mundo
Panorama naturale dall'alto, Il nostro impegno per un futuro sostenibile
Paisaje natural desde arriba, Nuestro compromiso con un futuro sostenible

Llevamos más de 35 años ofreciendo soluciones para el confort sostenible y el bienestar de las personas y el medio ambiente, utilizando tecnologías innovadoras y de elevada eficiencia energética. Únete a nosotros en este viaje hacia un futuro más sostenible.

Tu futuro comienza aquí

Se ha producido un error al procesar la plantilla.
Java method "jdk.proxy3.$Proxy164.getCategory(long)" threw an exception when invoked on jdk.proxy3.$Proxy164 object "com.liferay.portlet.asset.service.impl.AssetCategoryServiceImpl@64912693"; see cause exception in the Java stack trace.

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign categoryTitle = assetCategory...  [in template "10110#2640274#72734807" at line 89, column 57]
----
1<#assign hasCategories = false /> 
2<#assign assetCategoryService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryService") /> 
3<#assign assetCategoryPropertyLocalService = serviceLocator.findService("com.liferay.asset.category.property.service.AssetCategoryPropertyLocalService") /> 
4<#assign randomNamespace="0.${turnoverstr(.now?long?string)}"?number?string?replace(".", "") /> 
5 
6<style> 
7  .n_${randomNamespace}.categories-filter .dropdown-toggle { 
8	  text-transform: capitalize; 
9	  display: flex; 
10	  flex-direction: row; 
11		justify-content: space-between; 
12		align-items: center; 
13		height: 50px; 
14		min-width: 240px; 
15		border-color: #E7E7E7; 
16    border-radius: 8px; 
17		background-color: #fff; 
18		font-weight: 400; 
19
20	.n_${randomNamespace}.categories-filter .dropdown-toggle::after { 
21    display: block; 
22    /* margin-left: .255em; */ 
23    /* vertical-align: .255em; */ 
24    content: ""; 
25    /* border-top: .3em solid; */ 
26    /* border-right: .3em solid transparent; */ 
27    /* border-bottom: 0; */ 
28    /* border-left: .3em solid transparent; */ 
29    background-image: url(/o/clivet-liferay-nuance-theme/images/icons/chevron.svg); 
30    width: 24px; 
31    height: 24px; 
32    color: #000; 
33    transform: rotate(0deg); 
34
35	.n_${randomNamespace}.categories-filter .dropdown-item { 
36		text-transform: capitalize; 
37  	color: #000 !important; 
38		font-size: 16px; 
39		font-weight: 400; 
40
41	.n_${randomNamespace}.filter-label { 
42		color: #717171; 
43		font-size: 16px; 
44		font-style: normal; 
45		font-weight: 400; 
46
47	@media only screen and (max-width: 991.98px) { 
48		.n_${randomNamespace}.categories-filter .dropdown, 
49		.n_${randomNamespace}.categories-filter .dropdown-toggle { 
50			width: 100%; 
51
52
53</style> 
54 
55<#macro displayCategories 
56	categories 
57
58	<#if categories?has_content> 
59			<#list categories as category> 
60					<#assign categoryURL = renderResponse.createRenderURL() /> 
61 
62					${categoryURL.setParameter("resetCur", "true")} 
63					${categoryURL.setParameter("categoryId", category.getCategoryId()?string)} 
64					<#assign categoryURLs = categoryURL.toString()?replace("#p_"+themeDisplay.getPortletDisplay().getId(),"") /> 
65					<a href="${categoryURLs}" class="dropdown-item"><span class="text-truncate">${category.getTitle(themeDisplay.getLocale())}</span></a> 
66 
67					<#if serviceLocator??> 
68						<#assign childCategories = assetCategoryService.getChildCategories(category.getCategoryId()) /> 
69						<@displayCategories categories=childCategories /> 
70					</#if> 
71			</#list> 
72	</#if> 
73</#macro> 
74 
75<#assign categoryId = paramUtil.getLong(renderRequest, "categoryId") /> 
76<#assign firstButtonId = "" /> 
77<#if entries?has_content> 
78	<div class="n_${randomNamespace} categories-filter container">  
79		    <div class="n_${randomNamespace} filter-label mb-2 mb-lg-0"><@liferay_ui.message key="filter-by" />:</div> 
80		<div class="d-flex flex-column flex-lg-row justify-content-center align-items-center g-3"> 
81			<#assign index = 0/> 
82			<#list entries as entry> 
83				<#assign categories = entry.getCategories() /> 
84				<#assign categories = filterVisibleCategories(categories) /> 
85				<#if categories?has_content> 
86					<#assign hasCategories = true /> 
87						<#assign categoryTitle = entry.getUnambiguousTitle(entries, themeDisplay.getSiteGroupId(), themeDisplay.getLocale()) /> 
88						<#if validator.isNotNull(categoryId) && containsCategory(categories, categoryId)> 
89							<#assign categoryTitle = assetCategoryService.getCategory(categoryId).getName() /> 
90						</#if> 
91						<div class="dropdown"> 
92							<#if index == 0 > 
93							  <#assign firstButtonId = "n_${randomNamespace}dropdownMenuButton" />	 
94							</#if> 
95							<button class="btn dropdown-toggle" type="button" id="n_${randomNamespace}dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 
96    						${categoryTitle} 
97 							</button> 
98							<div class="dropdown-menu" aria-labelledby="n_${randomNamespace}dropdownMenuButton"> 
99								<@displayCategories categories=categories /> 
100							</div> 
101						</div> 
102				</#if> 
103				<#assign index = index + 1/> 
104			</#list> 
105      <#if hasCategories> 
106				<#assign resetCategoryURL = renderResponse.createRenderURL() /> 
107				${resetCategoryURL.setParameter("resetCur", "true")} 
108				${resetCategoryURL.setParameter("categoryId", "")} 
109				<a href="${resetCategoryURL}" class="reset-item btn btn-primary m-auto m-lg-0 justify-content-center"><span class="text-truncate"><@liferay.language key="reset" /></span></a> 
110			</#if> 
111			<#if !hasCategories> 
112				${renderRequest.setAttribute("PORTLET_CONFIGURATOR_VISIBILITY", true)} 
113 
114				<div class="alert alert-info w-100"> 
115					<@liferay_ui.message key="there-are-no-categories" /> 
116				</div> 
117			</#if> 
118		</div> 
119	</div> 
120</#if> 
121 
122<#function containsCategory 
123	categories 
124	lookup 
125
126	<#if categories?has_content> 
127		<#list categories as category> 
128				<#if category.getCategoryId() == lookup> 
129					<#return true /> 
130				</#if> 
131			<#assign childCategories = assetCategoryService.getChildCategories(category.getCategoryId()) /> 
132			<#if childCategories?has_content> 
133				<#return containsCategory(childCategories, lookup)/> 
134			</#if> 
135		</#list> 
136	</#if> 
137	<#return false /> 
138</#function> 
139 
140<#function filterVisibleCategories categories> 
141	<#assign result = [] /> 
142	<#if categories?has_content> 
143		<#list categories as category> 
144			<#attempt> 
145				<#assign visibilityProp = assetCategoryPropertyLocalService.fetchCategoryProperty(category.getCategoryId(), "VISIBILITY_FILTER") /> 
146				<#if visibilityProp?? && visibilityProp.getValue() == "TRUE"> 
147					<#assign result = result + [category] /> 
148				</#if> 
149			<#recover> 
150			</#recover> 
151		</#list> 
152	</#if> 
153	<#return result /> 
154</#function> 
155 
156<#function random > 
157	<#local h="0.${turnoverstr(.now?long?string)}" /> 
158	<#local r=h?number + rnd /> 
159	<#if r >= 1> 
160		<#local r=r-1 /> 
161	</#if> 
162	<#assign rnd=r /> 
163	<#return r/> 
164</#function> 
165 
166<#function turnoverstr str > 
167	<#local l = str?length /> 
168	<#local r = ""/> 
169	<#list 1..l as i> 
170		<#local r = r+str?substring(l-i,l-i+1)/> 
171	</#list> 
172	<#return r/> 
173</#function> 
174 
175 
176<#assign selectedOptionName = "default_value"> 
177<#if filterType?? && filterType.getData()?has_content> 
178    <#if filterType.getData() == 'opzione11682098'> 
179        <#assign selectedOptionName = 'product_filter'> 
180    <#elseif filterType.getData() == 'opzione80749396'> 
181        <#assign selectedOptionName = 'use_case_filter'> 
182    <#elseif filterType.getData() == 'opzione61712593'> 
183        <#assign selectedOptionName = 'job_filter'> 
184    <#elseif filterType.getData() == 'opzione71672717'> 
185        <#assign selectedOptionName = 'content_type_filter'> 
186    <#elseif filterType.getData() == 'opzione22125586'> 
187        <#assign selectedOptionName = 'operator_filter'> 
188    </#if> 
189</#if> 
190					 
191<script> 
192 
193	  $(".n_${randomNamespace}.categories-filter .dropdown-item").on('click', function(event) {  
194    if (typeof sendMeasurementEventFilter === 'function') {   
195		   var filterName = $(this).text(); 
196			  var filterType = '${selectedOptionName}';  
197        sendMeasurementEventFilter('Filter', filterType, filterName, 'no_type'); 
198    } else { 
199      console.error('sendMeasurementEventFilter not defined'); 
200
201  }); 
202	 
203	function fn_${randomNamespace}_fixLabel() { 
204	  let leftBtn = $("#${firstButtonId}").offset().left; 
205		let leftLabel = $(".n_${randomNamespace}.filter-label").offset().left; 
206		$(".n_${randomNamespace}.filter-label").css("paddingLeft", (leftBtn - leftLabel)+'px'); 
207		 
208		 
209
210	$(window).on('resize', function(){ 
211	  fn_${randomNamespace}_fixLabel(); 
212	}); 
213  fn_${randomNamespace}_fixLabel(); 
214</script> 
Tecnico di laboratorio di sala prove di sistemi ed impianti di climatizzazione, riscaldamento e trattamento aria
Qualità
Padova

PROFILO RICERCATO

In preparazione a una fase di crescita della nostra Area Laboratori a Padova, stiamo selezionando un Tecnico di Laboratorio che ci affianchi nello sviluppo del nostro business.
La risorsa selezionata, inserita nell’area Qualità e coordinata dal Test Room Manager, avrà il compito di supportare il processo di sviluppo dei nuovi prodotti, effettuare test di certificazione e qualificazione di nuovi componenti relativi a sistemi ed unità per impianti di climatizzazione, riscaldamento e trattamento aria.

Più specificatamente, all’interno del team operativo la risorsa si occuperà di:

  • Condurre dei test di laboratorio definiti da un piano prove con la responsabilità sulla corretta esecuzione degli stessi;
  • Definire e allestire la strumentazione e il set-up di sala per l’esecuzione delle prove;
  • Definire la sequenza dei test e la strumentazione di misura da utilizzare;
  • Eseguire controlli di laboratorio su banchi prova;
  • Redigere i test report adottando gli standard relativi ai prodotti testati e verificarne la conformità;
  • Annotare i risultati dei test all’interno dei piani di qualificazione per la review e aggiornare i necessari documenti tecnici e le procedure in base ai risultati ottenuti;
  • Proporre miglioramenti nelle tecniche di test e sul prodotto sulla base dell’esperienza e della conoscenza di nuovi strumenti di misura;
  • Partecipare a campagne di test presso laboratori terzi in Italia/Europa, se necessari e richiesti.

Ai fini della selezione verranno prese in considerazione le candidature con i seguenti requisiti:

  • Diploma di perito termotecnico/elettrico/meccanico o scuola professionale;
  • Conoscenze basilari di misure elettriche, meccaniche, termotecniche ed acustiche;
  • Buone capacità e propensione al lavoro manuale;
  • Capacità di analisi e interpretazione dei risultati;
  • Problem solving e teamwork;
  • Autonomia operativa e orientamento al risultato;
  • Gradita conoscenza del Pacchetto Office (in particolare Excel);

Requisiti aggiuntivi che costituiranno preferenza:

  • Conoscenza basilare del circuito frigorifero;
  • Conoscenza a livello intermedio della lingua inglese;
  • Pregressa esperienza di almeno 1/2 anni nel ruolo o in mansioni affini (ad esempio: collaudatore), all'interno di contesti industriali metalmeccanici di medie/grandi dimensioni preferibilmente nel settore HVAC.

Durata

Orario di lavoro full time, anche su 2/3 turni.

Inquadramento, livello e durata del contratto saranno commisurati all'esperienza maturata nel ruolo.

 

Per iscriverti clicca qui.

¿No has encontrado lo que buscabas?
No dudes en enviarnos tu candidatura