当前位置:首页 >评论专栏 >《科学时评》>正文

摒弃以“帽”取人打造引人用人“示范区”

 2024/12/11 14:24:56 《科学时评》 作者:中国教育报 我有话说(0人评论) 字体大小:+

高校当坚持“不看帽子看里子,不唯文章唯实力”的引才原则,吸引更多有真才实学的“潜力股”

引进好青年人才就是奠基未来,使用好青年人才就是创造未来

近日,一则有关上海某知名高校在青年人才引进中“轻帽子、重里子”的新闻引发舆论关注。媒体报道中还特别提及,一位出生于1997年、并没有什么特别学术“帽子”的年轻学者获聘该校助理教授、博士生导师。

曾几何时,部分高校将青年人才引进的关注点聚焦于是否拥有一定分量的“帽子”,即常常以“帽”取人,这显然并不科学,也违反了“破五唯”的精神。因此,高校当坚持“不看帽子看里子,不唯文章唯实力”的引才原则,吸引更多真才实学的“潜力股”,引进、留住能够填补学科方向的“空白区”,研究真问题、解决真问题的优秀人才。

事实上,青年人才正处于创新创造力的高峰期,是国家战略人才力量的重要组成部分。然而,一些高校超前布局和引进青年人才的意识和机制尚未建立,人才落地保障性措施配套不健全,造成青年人才规模不足、质量不高、结构不尽合理等突出问题,严重制约了学校事业高质量发展和人才培养质量。因此,切实增强人才引进的精准性,全方位调整过于看重“帽子”等“五唯”旧标准,有效拓宽人才引才渠道等,值得高校花大功夫、动真心思,自上而下规划改革,由表及里创新行动。

党的二十届三中全会提出,要建立以创新能力、质量、实效、贡献为导向的人才评价体系。各高校应认真贯彻落实这一导向下的人才发展机制,实现精准“引”才,让优秀青年人才有更多机会扛大旗、打头阵、当先锋,让有真才实学的青年人才在重要岗位上经风雨、长见识、增才干,全面提升人才效能。

2023年8月,中共中央办公厅、国务院办公厅印发《关于进一步加强青年科技人才培养和使用的若干措施》,充分落实给予青年人才“更多的信任、更好的帮助、更有力的支持”的要求,引导支持青年人才在国家重大科技任务中“挑大梁”“当主角”,在突出大胆使用、强化职业早期支持等方面,提出了一系列针对性、可操作性强的“硬举措”,就进一步支持青年人才成长发展作出具体部署。国内一批高校贯彻文件要求,结合实际推出识别、联结、引进、培育与评价青年人才等创新举措,打造引人、用人的“示范区”,有力提升了高校青年人才的创新活力和贡献度。

面向未来,高校应坚持分类评价导向,根据人才成长规律科学划分人才类型,分类制定多维评价标准,实施多类配套举措。对于战略科学家等顶尖人才,应着重考察其引领并谋划科技发展方向的能力,以及科研能力、学术视野、前瞻性判断力、跨学科理解能力、大兵团作战组织领导能力。对于应用性较强学科的青年人才,应引入产业、行业专家参与评价,着重考察其领域实践经验和技术创新能力,优先吸纳企业出站博士后,或具有企业生产、设计或研发部门工作经历,具备领域丰富的项目经验的人员,探索采用技术型、科研型、教学型等分系列岗位设置,增强高校岗位吸引力。

高校还应探索多元引才方式,围绕顺应科技发展趋势、国家战略需求牵引的学科专业引才,确保人才队伍与新质生产力主阵地的精准匹配。结合人才总体规划,将引才目标充分授权、分解到符合标准的“单元”,精准实现以才引才、团队引才、项目引才。以识才的慧眼、用才的胆识、聚才的良方,围绕人才使用、授权松绑、揭榜挂帅、多元投入等关键领域,聚焦有基础、有优势、能突破的战略方向,加大改革突破力度,构建激励创新、突出贡献的人才发展体系。

“创新”是决定未来成功的“密钥”,人才是教育事业的核心资源。对高校而言,引进好青年人才就是奠基未来,使用好青年人才就是创造未来。抛弃对“帽子”的执念,着重考察人才是否具备真才实学的“里子”,才有可能挖出一块块可堪培养的“真金子”。

(作者系天津大学发展规划处副研究员)

版权声明:本文转载仅仅是出于传播信息的需要,并不意味着代表本网站观点或证实其内容的真实性;如其他媒体、网站或个人从本网站转载使用,须保留本网站注明的“来源”,并自负版权等法律责任;作者如果不希望被转载或者联系转载稿费等事宜,请与我们接洽。
element block and removes // previous instances of the identical script. var found = false; for (var child = 0; child < head.childNodes.length; child++) { var control = head.childNodes[child]; if (typeof(control.tagName) == "string") { if (control.tagName.toUpperCase() == "SCRIPT") { if (script.src.length > 0) { if (script.src == control.src) { found = true; break; } } else if (script.innerHTML.length > 0) { if (script.innerHTML == control.innerHTML) { found = true; break; } } } } } if (found) { head.removeChild(control); } var scriptAddedToHead = false; if (typeof script.readyState != "undefined" && !window.opera) { script.onreadystatechange = function() { if (script.readyState != "complete" && script.readyState != "loaded") { return; } else { Anthem_LoadPageScript(result, index + 1); } } } else { if (isExternalScript) // if it's an external script, only execute the next script when the previous one is loaded. { script.onload = function() { Anthem_LoadPageScript(result, index + 1); } } else // I didn't find a way for script blocks to fire some onload event. So in this case directly call the Anthem_LoadPageScript for the next script. { document.getElementsByTagName('head')[0].appendChild(script); scriptAddedToHead = true; Anthem_LoadPageScript(result, index + 1); } } // Now we append the new script and move on to the next script. // Note that this is a recursive function. It stops when the // index grows larger than the number of scripts. if (!scriptAddedToHead) document.getElementsByTagName('head')[0].appendChild(script); } } catch (e) { Anthem_DebugError("Error adding page script to head. " + e.name + ": " + e.message); } } } function Anthem_EvalClientSideScript(result) { if (result.script) { for (var i = 0; i < result.script.length; ++i) { try { eval(result.script[i]); } catch (e) { alert("Error evaluating client-side script!\n\nScript: " + result.script[i] + "\n\nException: " + e); } } } } //Fix for bug #1429412, "Reponse callback returns previous response after file push". //see http://sourceforge.net/tracker/index.php?func=detail&aid=1429412&group_id=151897&atid=782464 function Anthem_Clear__EVENTTARGET() { var form = Anthem_GetForm(); Anthem_SetHiddenInputValue(form, "__EVENTTARGET", ""); } function Anthem_InvokePageMethod(methodName, args, clientCallBack, clientCallBackArg) { Anthem_Clear__EVENTTARGET(); // fix for bug #1429412 return Anthem_CallBack(null, "Page", null, methodName, args, clientCallBack, clientCallBackArg, true, true); } function Anthem_InvokeMasterPageMethod(methodName, args, clientCallBack, clientCallBackArg) { Anthem_Clear__EVENTTARGET(); // fix for bug #1429412 return Anthem_CallBack(null, "MasterPage", null, methodName, args, clientCallBack, clientCallBackArg, true, true); } function Anthem_InvokeControlMethod(id, methodName, args, clientCallBack, clientCallBackArg) { Anthem_Clear__EVENTTARGET(); // fix for bug #1429412 return Anthem_CallBack(null, "Control", id, methodName, args, clientCallBack, clientCallBackArg, true, true); } function Anthem_PreProcessCallBack( control, e, eventTarget, causesValidation, validationGroup, imageUrlDuringCallBack, textDuringCallBack, enabledDuringCallBack, preCallBackFunction, callBackCancelledFunction, preProcessOut ) { var valid = true; if (causesValidation && typeof(Page_ClientValidate) == "function") { valid = Page_ClientValidate(validationGroup); } if (typeof(WebForm_OnSubmit) == "function") { valid = WebForm_OnSubmit(); } if (valid) { var preCallBackResult = true; if (typeof(preCallBackFunction) == "function") { preCallBackResult = preCallBackFunction(control, e); } if (typeof(preCallBackResult) == "undefined" || preCallBackResult) { var inputType = control.getAttribute("type"); inputType = (inputType == null) ? '' : inputType.toUpperCase(); if (inputType == "IMAGE" && e != null) { var form = Anthem_GetForm(); if (e.offsetX) { // IE Anthem_SetHiddenInputValue(form, eventTarget + ".x", e.offsetX); Anthem_SetHiddenInputValue(form, eventTarget + ".y", e.offsetY); } else { // FireFox + ??? var offset = GetControlLocation(control); Anthem_SetHiddenInputValue(form, eventTarget + ".x", e.clientX - offset.x + 1 + window.pageXOffset); Anthem_SetHiddenInputValue(form, eventTarget + ".y", e.clientY - offset.y + 1 + window.pageYOffset); } } if (imageUrlDuringCallBack || textDuringCallBack) { var nodeName = control.nodeName.toUpperCase(); if (nodeName == "INPUT") { if (inputType == "CHECKBOX" || inputType == "RADIO" || inputType == "TEXT") { preProcessOut.OriginalText = GetLabelText(control.id); SetLabelText(control.id, textDuringCallBack); } else if (inputType == "IMAGE") { if (imageUrlDuringCallBack) { preProcessOut.OriginalText = control.src; control.src = imageUrlDuringCallBack; } else { preProcessOut.ParentElement = control.parentElement ? control.parentElement : control.parentNode; if (preProcessOut.ParentElement) { preProcessOut.OriginalText = preProcessOut.ParentElement.innerHTML; preProcessOut.ParentElement.innerHTML = textDuringCallBack; } } } else if (inputType == "SUBMIT" || inputType == "BUTTON") { preProcessOut.OriginalText = control.value; control.value = textDuringCallBack; } } else if (nodeName == "SELECT" || nodeName == "SPAN") { preProcessOut.OriginalText = GetLabelText(control.id); SetLabelText(control.id, textDuringCallBack); } else { preProcessOut.OriginalText = control.innerHTML; control.innerHTML = textDuringCallBack; } } // Disable the control during callback if required control.disabled = (typeof(enabledDuringCallBack) == "undefined") ? false : !enabledDuringCallBack; return true; } else { // Callback cancelled if (typeof(callBackCancelledFunction) == "function") { callBackCancelledFunction(control, e); } return false; } } else { // Validation failed return false; } } function Anthem_PreProcessCallBackOut() { // Fields this.ParentElement = null; this.OriginalText = ''; } function Anthem_PostProcessCallBack( result, control, e, eventTarget, clientCallBack, clientCallBackArg, imageUrlDuringCallBack, textDuringCallBack, postCallBackFunction, preProcessOut ) { if (typeof(postCallBackFunction) == "function") { postCallBackFunction(control, e); } // Re-enable the control if it was disabled during callback control.disabled = false; var inputType = control.getAttribute("type"); inputType = (inputType == null) ? '' : inputType.toUpperCase(); if (inputType == "IMAGE") { var form = Anthem_GetForm(); Anthem_RemoveHiddenInput(form, eventTarget + ".x"); Anthem_RemoveHiddenInput(form, eventTarget + ".y"); } if (imageUrlDuringCallBack || textDuringCallBack) { var nodeName = control.nodeName.toUpperCase(); if (nodeName == "INPUT") { if (inputType == "CHECKBOX" || inputType == "RADIO" || inputType == "TEXT") { SetLabelText(control.id, preProcessOut.OriginalText); } else if (inputType == "IMAGE") { if (imageUrlDuringCallBack) { control.src = preProcessOut.OriginalText; } else { preProcessOut.ParentElement.innerHTML = preProcessOut.OriginalText; } } else if (inputType == "SUBMIT" || inputType == "BUTTON") { control.value = preProcessOut.OriginalText; } } else if (nodeName == "SELECT" || nodeName == "SPAN") { SetLabelText(control.id, preProcessOut.OriginalText); } else { control.innerHTML = preProcessOut.OriginalText; } } if (typeof(clientCallBack) == "function") { clientCallBack(result, clientCallBackArg); } } function Anthem_FireCallBackEvent( control, e, eventTarget, eventArgument, causesValidation, validationGroup, imageUrlDuringCallBack, textDuringCallBack, enabledDuringCallBack, preCallBackFunction, postCallBackFunction, callBackCancelledFunction, includeControlValuesWithCallBack, updatePageAfterCallBack ) { // Cancel the callback if the control is disabled. Although most controls will // not raise their callback event if they are disabled, the LinkButton will. // This check is for the LinkButton. See SourceForge Patch 1639700.