משרה פתוחה
דרוש/ה הנדסאי/ת בניין
שליחת קורות חיים
מלאו את הפרטים והעלו קובץ קורות חיים. ההגשה תישלח אליכם וגם אל מפרסם המשרה אם הוגדר מייל במשרה.
פרטי המשרה
תיאור המשרה
למשרד משפחתי, מקצועי ויציב באזור חיפה דרוש/ה הנדסאי/ת בניין.
התפקיד כולל עבודה שוטפת על שרטוטי בניין וגרמושקות, בסביבה נעימה ותומכת עם אפשרות לצבירת ניסיון מעשי בתחום.
דרישות התפקיד
שליטה מלאה בתוכנת AutoCAD
יכולת הכנת שרטוטי בניין וגרמושקות
רצון ללמוד ולהתפתח בתחום התכנון והבנייה
המשרה מתאימה גם לסטודנטים הלומדים במתכונת ערב ומעוניינים לצבור ניסיון מקצועי
ניסיון קודם אינו חובה
היקף המשרה: משרה מלאה
סוג משרה: שכיר/ה
כמות הצפיות למשרה: 218
תאריך פרסום המשרה
#instant-fit { font-family: Heebo,Arial; direction: rtl; max-width: 900px; margin: 20px auto; padding: 25px; border-radius: 16px; border: 1px solid #0b84ff; background: linear-gradient(180deg,#f6fbff,#eaf6ff); box-shadow: 0 6px 18px rgba(0,0,0,0.08); }
#instant-fit h3 { margin: 0 0 10px 0; font-weight: 700; font-size: 22px; color:#0b3c8a; }
#instant-fit .forecast { font-weight: 700; font-size: 16px; color: #2ecc71; margin: 6px 0 14px 0; }
#instant-fit input[type=file], #instant-fit textarea { display:none; }
#instant-fit .meter { height: 24px; border-radius: 999px; background: #eef6ff; overflow: hidden; margin-top: 12px; border: 1px solid #cce0ff; }
#instant-fit .meter-fill { height: 100%; width: 0%; background: linear-gradient(90deg,#0b84ff,#2ecc71); transition: width 0.8s ease; }
.badge { display: inline-block; padding: 6px 12px; border-radius: 999px; font-weight: 700; background: #ffefc2; color: #7a5f00; margin: 4px; font-size: 13px; }
.badge.found { background: #c2ffe8; color: #007a5f; }
.score-label { font-weight: 700; font-size: 18px; margin-left: 8px; }
.small { font-size: 13px; color: #556677; margin-top: 6px; }
#paste-container { display:none; margin-top:10px; }
#paste-container textarea { display:block; width:100%; min-height:120px; padding:10px; border-radius:8px; border:1px solid #cce0ff; font-family:Heebo,Arial; font-size:14px; resize:vertical; }
#fit-alert { color:#d84315; font-weight:700; margin-top:10px; display:none; }
#fit-loading { color:#0b84ff; font-weight:700; margin-top:10px; display:none; }
#instant-fit .button-group {
display: flex;
flex-wrap: wrap;
gap: 12px;
margin-top: 12px;
}
#instant-fit label.upload-btn,
#instant-fit button,
#instant-fit button.secondary {
flex: 1 1 160px;
display: flex;
align-items: center;
justify-content: center;
padding: 12px 0;
font-size: 16px;
font-weight: 700;
background: #0b84ff;
color: #fff;
border-radius: 8px;
border: none;
cursor: pointer;
text-align: center;
text-decoration: none;
transition: background 0.3s;
box-sizing: border-box;
}
#instant-fit label.upload-btn:hover,
#instant-fit button:hover,
#instant-fit button.secondary:hover {
background: #0961b3;
}
@media (max-width: 480px){
#instant-fit { padding:15px; }
#instant-fit h3 { font-size:18px; }
#instant-fit label.upload-btn,
#instant-fit button,
#instant-fit button.secondary { flex: 1 1 100%; padding: 10px 0; font-size: 14px; }
.meter { height:20px; }
.badge { font-size:12px; padding:4px 8px; }
}
(async function(){
const scoreEl = document.getElementById('fit-score');
const missingEl = document.getElementById('fit-missing');
const futureEl = document.getElementById('forecast-title');
const meterEl = document.getElementById('fit-meter');
const commentEl = document.getElementById('fit-comment');
const alertEl = document.getElementById('fit-alert');
const loadingEl = document.getElementById('fit-loading');
const calcBtn = document.getElementById('fit-calc');
const exportBtn = document.getElementById('fit-export');
const fileInput = document.getElementById('cv-file');
const showPasteBtn = document.getElementById('show-paste');
const pasteContainer = document.getElementById('paste-container');
const pasteTextarea = document.getElementById('cv-paste');
const possibleHeaders = [
"מה אנחנו מחפשים",
"דרישות המשרה",
"דרישות",
"מיומנויות נדרשות",
"כישורים נדרשים"
];
const stopWords = [
"עם","של","על","ה","ו","בתוך","ל","מה","או","כ","יש","כן","לא","את","זה","זהו","זהה","היה","היו","היא",
"the","and","or","in","of","for","with","a","an","to","is","are","on","at","by","from","that","this"
];
function careerForecast(score){
if(score>=85) return "קידום מהיר אפשרי: ביניים → בכיר בתוך שנה";
if(score>=65) return "קידום אפשרי תוך 2‑3 שנים";
return "מומלץ להתחיל עם קורסים/פרויקטים משלימים";
}
function extractSkillsFromJob(text){
const lines = text.split(/\r?\n/).map(l=>l.trim()).filter(l=>l.length>0);
let skills = [];
for(let i=0;iline.includes(h))){
let j=i+1;
while(j0)){
skills.push(lines[j].replace(/^•\s*/,'').trim());
j++;
}
break;
}
}
return skills;
}
function filterMeaningfulWords(text){
return text.toLowerCase().split(/\s+/).filter(w=>!stopWords.includes(w)).map(w=>w.replace(/[^\p{L}\p{N}]/gu,'')).filter(w=>w.length>1);
}
function analyze(jobSkills, cvText){
cvText = filterMeaningfulWords(cvText).join(" ");
let score = 30;
let missing = [];
let found = [];
if(jobSkills.length===0) return {score:30,missing:["לא נמצאו מיומנויות במשרה"],found:[]};
jobSkills.forEach(skill=>{
const skillWords = filterMeaningfulWords(skill);
let matched = false;
skillWords.forEach(sw=>{
if(cvText.includes(sw)){
matched = true;
}
});
if(matched){
found.push(skill);
score += Math.floor(70/jobSkills.length);
} else {
missing.push(skill);
}
});
score = Math.min(100,score);
if(found.length===0) score = 30;
return {score,missing,found};
}
function loadJobText(){
const selectors = [
'.elementor-widget-text-editor .elementor-text-editor',
'.elementor-widget-text-editor',
'article',
'.job-description',
'.entry-content'
];
for(const sel of selectors){
const el = document.querySelector(sel);
if(el && el.innerText.trim().length>30) return el.innerText.trim();
}
return "";
}
async function readWord(file){
loadingEl.style.display="block";
const arrayBuffer = await file.arrayBuffer();
const result = await mammoth.extractRawText({arrayBuffer});
loadingEl.style.display="none";
return result.value;
}
function commentForScore(score){
if(score>=95) return "מעולה! הציון כמעט מושלם!";
if(score>=85) return "מדהים! התאמה גבוהה מאוד!";
if(score>=75) return "מצוין! התאמה טובה!";
if(score>=65) return "טוב מאוד! קצת מקום לשיפור";
return "טוב! אפשר לשפר עוד קצת";
}
function isTextMeaningful(text){
const words = filterMeaningfulWords(text);
return words.length >= 5;
}
showPasteBtn.addEventListener('click', ()=>{ pasteContainer.style.display = pasteContainer.style.display==='none'?'block':'none'; });
calcBtn.addEventListener('click', async()=>{
alertEl.style.display="none";
const jobText = loadJobText();
if(!jobText){ alert("לא נמצא טקסט משרה בעמוד"); return; }
let cvText = "";
if(fileInput.files.length>0){
cvText = await readWord(fileInput.files[0]);
} else if(pasteTextarea.value.trim()!==""){
cvText = pasteTextarea.value.trim();
} else {
alert("אנא העלה קובץ Word או הדבק קורות חיים.");
return;
}
if(!isTextMeaningful(cvText)){
alertEl.textContent = "הקורות חיים שהזנתם קצרים מדי או אינם קריאים. אנא הזינו קובץ אמיתי או הדביקו קורות חיים מלאים.";
alertEl.style.display="block";
scoreEl.textContent = "--";
meterEl.style.width = "0%";
commentEl.textContent = "";
missingEl.textContent = "---";
futureEl.textContent = "תחזית קריירה: ---";
return;
}
const jobSkills = extractSkillsFromJob(jobText);
const res = analyze(jobSkills, cvText);
scoreEl.textContent = res.score;
meterEl.style.width = res.score+"%";
commentEl.textContent = commentForScore(res.score);
let badges = [];
if(res.found.length>0) badges.push(...res.found.map(m=>`${m}`));
if(res.missing.length>0) badges.push(...res.missing.map(m=>`${m}`));
missingEl.innerHTML = badges.length ? badges.join(' ') : "כל המיומנויות נמצאות";
futureEl.textContent = careerForecast(res.score);
localStorage.setItem('instant-fit-last', JSON.stringify({
timestamp:new Date().toISOString(),
score:res.score,
missing:res.missing,
found:res.found,
forecast:careerForecast(res.score)
}));
});
exportBtn.addEventListener('click', ()=>{
const last = JSON.parse(localStorage.getItem('instant-fit-last')||"null");
if(!last){ alert("לא נמצא ניתוח"); return; }
const w=window.open('','_blank','width=800,height=900');
const html = `TheJob.co.il — דוח התאמה
בדקו האם הקורות חיים שלכם מתאימים למשרה וגם קבלו תחזית איך תתפתח הקריירה שלכם אם תעבדו במשרה הזאת
תחזית קריירה: ---
ציון התאמה: --/100
מיומנויות:
---
מעלה קובץ… אנא המתן
בחרו קובץ קורות חיים (Word בלבד):
TheJob.co.il — דוח התאמה למשרה
תאריך: ${new Date(last.timestamp).toLocaleString()}
ציון התאמה: ${last.score}/100
מיומנויות נמצאו: ${last.found.join(", ")||"לא נמצאו"}
מיומנויות חסרות: ${last.missing.join(", ")||"כל המיומנויות נמצאות"}
מיומנויות חסרות: ${last.missing.join(", ")||"כל המיומנויות נמצאות"}
תחזית קריירה: ${last.forecast}
`;
w.document.write(html); w.document.close();
setTimeout(()=>w.print(),500);
});
})();
תוייג דרושים חיפה והסביבה, הנדסאי בניין, חיפה, משרה, משרות, משרות לתושבי הצפון