توضیحات
ABSTRACT
Good software engineers are essential to the creation of good software. However, most of what we know about softwareengineering expertise are vague stereotypes, such as ‘excellent communicators’ and ‘great teammates’. The lack of specificity in our understanding hinders researchers from reasoning about them, employers from identifying them, and young engineers from becoming them. Our understanding also lacks breadth: what are all the distinguishing attributes of great engineers (technical expertise and beyond)? We took a first step in addressing these gaps by interviewing 59 experienced engineers across 13 divisions at Microsoft, uncovering 53 attributes of great engineers. We explain the attributes and examine how the most salient of these impact projects and teams. We discuss implications of this knowledge on research and the hiring and training of engineers.
INTRODUCTION
Software engineering research has considered a vast number of factors that affect project outcomes, from process and tools, to programming languages and requirement elicitation. We rarely give consideration, however, to one of the most fundamental components of software engineering: the engineers themselves. Specifically, what makes a software engineer great? This basic question is at the foundation of nearly every part of our world’s rapidly growing software ecosystem: employers want to hire and retain great engineers, universities want to train great engineers, and young engineers want to become great. And yet our understanding of what characteristics define software engineering expertise still lacks specificity, breadth, and rigor. The research we do have on this subject is directionally sound, but often too indirect or abstract to form a foundational understanding of software-engineering expertise. For example, some research has considered experiences of new hires , finding that engineers need to contribute value to the team, not become blocked (i.e. have self-efficacy and be persistent), and effectively navigate large organizations. Other research hints at important attributes, but only indirectly. For example, research on teaching novices and programmer productivity indicate experts are generally more productive: producing solutions faster, producing more in the same amount of time, and/or having fewer bugs.
چکیده
مهندسان نرم افزار خوب برای ایجاد نرم افزار خوب ضروری هستند. با این حال، بیشتر آنچه که ما در مورد تخصص فنی نرم افزار می دانیم کلیشه های مبهم، مانند “ارتباطات عالی” و “هم تیمی های عالی” است. کمبود مشخصه در درک ما باعث می شود محققان از استدلال در مورد آنها، کارفرمایان از شناسایی آنها و مهندسین جوان از تبدیل شدن به آنها جلوگیری کنند. فهم ما نیز فاصلهای نداشته است: همه ویژگیهای متمایز مهندسین عالی (تخصص فنی و فراتر از آن) چیست؟ ما اولین گام در حل این شکاف را با مصاحبه با 59 مهندس مجرب در 13 بخش مایکروسافت، کشف 53 ویژگی مهندسین بزرگ انجام دادیم. ما ویژگی ها را توضیح می دهیم و چگونگی برجسته ترین این پروژه ها و تیم ها را تحت تاثیر قرار می دهیم. ما در مورد پیامدهای این دانش در مورد تحقیق و استخدام و آموزش مهندس ها صحبت می کنیم.
مقدمه
تحقیقات مهندسی نرم افزار شمار زیادی از عواملی را که بر نتایج پروژه ها، از فرآیند و ابزار، به زبان های برنامه نویسی و نیازهای احتمالی تاثیر می گذارد، در نظر گرفته است. با این حال، ما به ندرت به یکی از اساسی ترین اجزای مهندسی نرم افزار توجه می کنیم: خود مهندسین. به طور خاص، چه چیزی یک مهندس نرم افزار عالی است؟ این سوال اساسی پایه و اساس تقریبا هر بخش از اکوسیستم نرم افزاری سریع در حال رشد ما است: کارفرمایان می خواهند استخدام و نگهداری مهندسین عالی، دانشگاه ها بخواهند مهندسان بزرگ را آموزش دهند و مهندسان جوان می خواهند بزرگ شوند. و در عین حال درک ما از ویژگیهایی که تخصص مهندسی نرم افزار را تعریف می کند هنوز مشخص نیست، گستردگی و سختی دارد. تحقیقاتی که ما در مورد این موضوع انجام می دهیم در جهت صحیح است، اما اغلب غیر مستقیم یا انتزاعی است که یک درک پایه ای از تخصص مهندسی نرم افزار را تشکیل می دهد. به عنوان مثال، برخی تحقیقات تجربیات استخدام جدید را در نظر گرفته اند و دریافتند که مهندسان نیاز به ارزش دادن به تیم دارند، مسدود نمی شوند (یعنی خود کارآمدی و پایدار هستند) و به طور موثر در سازمان های بزرگ حرکت می کنند. سایر نکات تحقیق در مورد ویژگی های مهم، اما تنها به طور غیر مستقیم. به عنوان مثال، تحقیق در مورد تدریس نوآوران و بهره وری برنامه نویس نشان می دهد که کارشناسان عموما مولدتر هستند: سریعتر تولید، سریعتر تولید، و زمان بیشتری تولید و / یا اشکالات کمتر.
Year: 2011
Publisher : Sixth National Congress on Civil Engineering
By : Paul Luo Li , Andrew J. Ko, Jiamin Zhu
File Information: English Language/ 11 Page / size: 602 KB
Only site members can download free of charge after registering and adding to the cart
سال : 1390
ناشر : ششمین کنـگره ملی مهنـدسی عمـران
کاری از : پل لو لی، اندرو J. Ko، جیمان Zhu
اطلاعات فایل : زبان انگلیسی / 11 صفحه / حجم : KB 602
نقد و بررسیها
هنوز بررسیای ثبت نشده است.