software engineering

Concurrent Software Engineering Project




software engineering

Activity Oriented Teaching Strategy for Software Engineering Course: An Experience Report

Aim/Purpose: This paper presents the findings of an Activity-Oriented Teaching Strategy (AOTS) conducted for a postgraduate level Software Engineering (SE) course with the aim of imparting meaningful software development experience for the students. The research question is framed as whether the activity-oriented teaching strategy helps students to acquire practical knowledge of Software Engineering and thus bridge the gap between academia and software industry. Background: Software Engineering Education (SEE) in India is mainly focused on teaching theoretical concepts rather than emphasizing on practical knowledge in software development process. It has been noticed that many students of CS/IT background are struggling when they start their career in the software industry due to inadequate familiarity with the software development process. In the current context of SE education, there is a knowledge gap between the theory learned in the classroom and the actual requirement demanded by the software industry. Methodology: The methodology opted for in this study was action research since the teachers are trying to solve the practical problems and deficiencies encountered while teaching SE. There are four pedagogies in AOTS for fulfilling the requirements of the desired teaching strategy. They are flipped classroom, project role-play for developing project artifacts, teaching by example, and student seminars. The study was conducted among a set of Postgraduate students of the Software Engineering programme at Cochin University of Science and Technology, India. Contribution: AOTS can fulfil both academic and industrial requirements by actively engaging the students in the learning process and thus helping them develop their professional skills. Findings: AOTS can be molded as a promising teaching strategy for learning Software Engineering. It focuses on the essential skill sets demanded by the software industry such as communication, problem-solving, teamwork, and understanding of the software development processes. Impact on Society: Activity-oriented teaching strategies can fulfil both academic and industrial requirements by actively engaging the students in the SE learning process and thus helping them in developing their professional skills. Future Research: AOTS can be refined by adding/modifying pedagogies and including different features like an online evaluation system, virtual classroom etc.




software engineering

Collaborative Approach in Software Engineering Education: An Interdisciplinary Case

Aim/Purpose: This study was aimed at enhancing students’ learning of software engineering methods. A collaboration between the Computer Science, Business Management, and Product Design programs was formed to work on actual projects with real clients. This interdisciplinary form of collaboration simulates the realities of a diverse Software Engineering team. Background: A collaborative approach implemented through projects has been the established pedagogy for introducing the Software Engineering course to undergraduate Computer Science students. The collaboration, however, is limited to collaboration among Computer Science students and their clients. This case study explored an enhancement to the collaborative approach to project development by integrating other related disciplines into the project development framework; hence, the Interdisciplinary Approach. Methodology: This study adopted the case method approach. An interdisciplinary service innovation activity was proposed to invite other disciplines in the learning process of the computer science students. The agile methodology Scrum was used as the software development approach during project development. Survey data were collected from the students to establish (a) their perception of the interdisciplinary approach to project development; (b) the factors that influenced success or failure of their team to deliver the project; and (c) the perceived skills or knowledge that they acquired from the interdisciplinary approach. Analysis of data followed a mixed method approach. Contribution: The study improved the current pedagogy for Software Engineering education by integrating other related disciplines into the software project development framework. Findings: Data collected showed that the students generally accepted the interdisciplinary approach to project development. Factors such as project relevance, teamwork, time and schedule, and administration support, among others, affect team performance towards project completion. In the case of the Computer Science students, results show that students have learned skills during the experience that, as literature reveal, can only be acquired or mastered in their future profession as software engineers. Recommendations for Practitioners: The active collaboration of the industry with the University and the involvement of the other related courses in teaching software engineering methods are critical to the development of the students, not only in learning the methodology but also as a working professional. Recommendation for Researchers: It is interesting to know and eventually understand the interactions between interdisciplinary team members in the conduct of Software Engineering practices while working on their projects. More specifically, what creative tensions arise and how do the interdisciplinary teams handle the discourse? Impact on Society: This study bridges the gap between how Software Engineering is taught in the university and how Software Engineering teams work in real life. Future Research: Future research is targeted at refining and elaborating the elements of the interdisciplinary framework presented in this paper towards an integrated course module for Software Engineering education.




software engineering

Accreditation of Monash University Software Engineering (MUSE) Program




software engineering

Evaluation of a Suite of Metrics for Component Based Software Engineering (CBSE)




software engineering

Innovation and Scaling up Agile Software Engineering Projects




software engineering

IT Systems Development: An IS Curricula Course that Combines Best Practices of Project Management and Software Engineering




software engineering

Cross-Departmental Collaboration for the Community: Technical Communicators in a Service-Learning Software Engineering Course




software engineering

Software Engineering Frameworks: Perceptions of Second-Semester Students




software engineering

Teaching Undergraduate Software Engineering Using Open Source Development Tools




software engineering

An Improved Assessment of Personality Traits in Software Engineering




software engineering

Secure Software Engineering: A New Teaching Perspective Based on the SWEBOK




software engineering

Ethical and legal aspects of computing: a professional perspective from software engineering

With this book, O’Regan efficiently addresses a wide range of ethical and legal issues in computing. It is well crafted, organized, and reader friendly, featuring many recent, relevant examples like tweets, fake news, disinformation




software engineering

Staff Verification Engineer, CPU Modelling, Experienced Professionals, Bangalore, India, Software Engineering

Introduction

Arm architects the pervasive intelligence that is transforming our daily experience. Arm-based chips and device architectures orchestrate the performance of the technology that makes modern life possible.Arm designs the technology which is at the heart of advanced digital products, from wireless, networking and consumer entertainment solutions to imaging, automotive, security and storage devices. Arm improves people’s lives by enabling the intelligence in affordable, easy-to-use electronic products that transform the way we live and work. We work in partnership with a global network of leading technology companies which are using our smart low-power technology. Together we are shaping the future of a better world.

Today, We are well recognized as the market leader in the CPU and System IP industry and this has been achieved by consistently delivering reliable and high-quality IP products. The cost of design and manufacturing and that warrants “right first time” approach for all IP and System products by our partners. Time-to-market is critical for our partners to deal with fierce competition in the marketplace, being first would enable them to get premium value from the end products. In this context, Design Verification of CPU IPs is a big challenge requiring an engineering skillset that is both broad and deep.




software engineering

Staff Performance Analysis Engineer, Experienced Professionals, Cambridge, UK, Software Engineering

We are an Equal Opportunity Employer and do not discriminate against any employee or applicant for employment because of race, color, sex, age, national origin, religion, sexual orientation, gender identity, status as a veteran, and basis of disability or any other federal, state or local protected class.

Are you highly inquisitive with a committed approach to improving performance? Do you want to make an impact on the future of Smartphone and Laptop computing?
We are looking for experienced engineers with a strong understanding of computer architecture and performance analysis to investigate emerging use-cases such as AR and ML to help define future IP from Arm and our partners.

About the role

As a senior member of the engineering team within the Client Line of Business you will lead performance analysis investigations, producing data-led analysis and conclusions which help define requirements for future Client compute solutions.
Client computing devices are expected to deliver incredible performance across an increasing range of diverse use cases including AAA quality gaming, compelling AR experiences and applications with deeply embedded AI and ML.
You will use your knowledge of hardware and software to build a deep understanding of critical use cases. You will look at how workloads utilise available compute and memory resources, how advancements in SoC topologies, processor design and software will help improve user experience.




software engineering

Software Engineer - Debug and Performance Analysis Tools, Experienced Professionals, Cambridge, UK, Software Engineering

We are looking for an enthusiastic software developer with understanding of Java or modern C++, to join the Arm Mobile Studio team.

The role involves collaborating with highly motivated developers from different backgrounds, and customers throughout the world, to craft the next generation of our performance analysis tools for Arm CPUs and Mali GPUs. As part of this team, you would help create new features, maintain existing ones, and support the engineering infrastructure for build, test, and continuous integration. We also help to support both internal and external customers, and contribute to our developer documentation, developer website, and community forums.

We are growing the team to help deliver features that support the full breadth of Arm's product portfolio. Our tools are used to optimize the latest smart cars, drones, mobile games, and machine learning applications, your ideas will make a difference and help to bring world-beating products to market.




software engineering

Senior Software Engineer – HPC debug and analysis tools (Fixed Term Contract), Experienced Professionals, Warwick, UK, Software Engineering

Please note this is a Fixed Term Contract ending Sept 2021

We are looking for a highly skilled, technically capable senior software engineer to join the team of Arm Forge at Warwick. You will be passionate about making a difference through building great quality products.

As an experienced developer, you’ll have a methodical approach to debugging and performance analysis and understand how developers will use our tools to achieve their objectives. Working as part of a team of C++ software engineers based in Warwick you will help to develop the Arm Forge Debug and Profiling tools.

Arm Forge is used by developers to increase software performance or fix software bugs from single Linux servers right up to the largest supercomputer on the planet.  Our tools span a wide range of use cases; from C/C++/Python developers writing multithreaded server applications or ML and data analysis applications, to C/C++/Fortran/Python HPC developers scaling to millions of cores.

To learn more about our group and the products please check https://developer.arm.com/hpc.

Main Duties

We are looking for a highly skilled and motivated senior software engineer who is passionate about producing quality valuable software to join our elite team based in Warwick.

  • Responsible for developing quality functionality on schedule, including specification, design, development, documentation and test.
  • Drive forward major features or improvements and increase quality into the product.
  • Expected to integrate with existing ARM process and infrastructure where possible and use your experience to introduce new processes where required.




software engineering

Senior Design Engineer, Experienced Professionals, Austin (TX), USA, Software Engineering

About the role

We are searching for a talented Software Engineer to join the Raven Random Test Generator team at the Arm Austin Design Center. As a Software Engineer on our team, you will help develop and deploy our core product, Raven – a powerful dynamic random test generator written in C++ that has been used extensively by CPU design teams throughout the Arm ecosystem for more than a decade. You will work in close collaboration with senior CPU verification engineers both inside and outside of Arm to define and develop new ways of achieving their verification goals.

The Raven team is part of Arm’s Architecture & Technology Group – the part of Arm that develops architectural specifications and technologies needed to support Arm’s partners in successful development of processors conforming to the architecture. In addition to our product for CPU verification groups, we also collaborate early and frequently with Arm’s architects to help ensure that new architectures can be verified effectively.

As a member of our team, your day-to-day work will consist primarily of design and development of our C++ tool and supporting customers and coworkers to solve verification problems. This work relies heavily upon a strong knowledge of computer architecture concepts and ability to read and understand new architectural specifications. If you are looking for a role that combines hardware and software skills in an environment where you can make a significant contribution and collaborate with a talented team that creates leading-edge verification technologies and methodologies, we’re looking forward to hearing from you!




software engineering

Part Time Undergraduate - Software, Part-time Undergraduate, Manchester, UK, Cambridge, UK, Software Engineering

Arm is seeking highly motivated and creative undergraduates to join our Cambridge, Manchester, and Sheffield-based teams working on state-of-the-art software.


In your cover letter please specify which year you will be graduating.


Our software supports a whole ecosystem, from embedded firmware through operating system kernels, compilers, libraries, developer tools, applications, and web technologies. We work in the open-source community, build tools to support our internal processes, and create commercial software products. Whatever your focus in software engineering, Arm will help you to grow your skills whilst working on projects that drive technology forward for our billions of end-users.[




software engineering

Machine Learning, Graduates, Cambridge, UK, Software Engineering

Arm's Machine Learning Group is seeking for a highly motivated and creative Graduate Software Engineer to join the Cambridge-based applied ML team.

From research, to proof-of-concept development, to deployment on ARM IPs, joining this team, would be a phenomenal opportunity to contribute to the full life-cycle of machine learning projects and understand how state-of-the-art machine learning is used to solve real word problems.

Working closely with field experts in a truly multi-discipline environment, you will have the chance to explore existing or build new machine learning techniques, while helping unpick the complex world of use-cases that are applied on high end mobile phones, TVs, and laptops.

About the role

Your role would be to understand, develope and implement these use case, collaborating with Arm's system architects, and working with our marketing groups to ensure multiple Arm products are molded to work well for machine learning. Also, experience deploying inference in a mobile or embedded environment would be ideal. Knowledge of the theory and concepts involved in ML is also needed, so fair comparisons of different approaches can be made.

As an in depth technical role, you will need to understand the complex applications you analyse in detail and communicate them in their simplest form to help include them in product designs, where you will be able to influence both IP and system architecture.




software engineering

HW/SW Part-Time Undergraduate, Part-time Undergraduate, Cambridge, UK, Software Engineering

Introduction 

Arm is the world's leading semiconductor intellectual property (IP) supplier and as such is at the heart of the development of digital electronic products. Arm’s ecosystem includes many of the biggest names in consumer electronics and semiconductor manufacturing.  

What are we searching for? 

We are seeking an outstanding, highly motivated intern to join one of our hardware and software related teams. You will possibly work within the  

  • Central Engineering Methodology team, to creatively improve processes that drive efficient CPU development.  
  • Central Technology Solutions Functional Safety team to use a wide variety of techniques to analyse and verify newly developed solutions 

  • Automotive and IoT Functional Safety team to develop and improve processes to derive development of safe products and solutions.    

What could I be contributing to? 

Central Engineering Methodology group you will be working closely with design teams to resolve issues and automate processes that help standardize the way we develop and deliver CPU products to our internal and external customers.  Your work will focus on impacting the verification effectiveness and efficiencies of the design teams.  

Central Technology Solutions team, you will join a growing and highly motivated team responsible to develop Functionally Safe architectures for state of the art projects within autonomous drive systems, digital cockpit and robotics.  

Automotive and IoT teamyou will be working with a fast growing and strong team to resolve issues, automate processes and define management systems to help standardize the way we develop and deliver our Automotive & IoT products to achieve the toughest certification requirements in functional safety.  

 




software engineering

Graduate Platforms Hardware Engineer, Graduates, Cambridge, UK, Software Engineering

About the role

We are looking for enthusiastic Graduate Electronics or Embedded System Engineer to join Arm’s Hardware Platform team, who are working at the forefront of embedded design based around Arm IP products. We are responsible for

  • Designing and releasing the latest Arm IP technologies in FPGA image, enabling pre-silicon software and ecosystem development, reducing time to market.
  • Creating physical hardware development platforms, based around Arm’s custom system-on-chip (SoC) and FPGAs for software development and validation activities for both our external partners/customers and our internal development teams.

If you’re interested in:

  • The potential to work on all aspects of product development, from specification to customer release.
  • Eager to learn, a willingness to work across disciplines.
  • The challenges of bringing up a new development board.
  •  

Creating and validating Verilog RTL design in FPGA.

  • Gaining a deeper understanding of system architecture and performance.
  • Working alongside many other teams including system architects, CPU / System IP designers, physical chip layout / packaging engineers.
  • Interaction with Arm’s partners and customers both through the support organisation and directly.

Then we have a role for you!

What will I be accountable for?

As a Graduate, you will be placed in a development team at Arm’s offices in Cambridge, UK where you will have a mentor, and be able to get to grips with the problems ranging across many hardware and software areas.  You will be working across all aspects of the product lifecycle whilst being supported by and learning from the rest of the team.




software engineering

Graduate Embedded Platforms Software Engineer, Graduates, Cambridge, UK, Software Engineering

About the role

We are looking for enthusiastic Graduate Electronics or Embedded System Engineer to join Arm’s Hardware Platform team, who are working at the forefront in the following embedded areas:

  • Development and validation of physical hardware platforms, based around Arm’s custom system-on-chip (SoC) and FPGAs.
  • Creating software to test Arm systems both in simulation and in hardware (FPGA & Silicon)
  • Porting existing simulation/emulation RTL validation software to real hardware
  • Create and maintain Build environments & Automation tooling to ensure we supply high quality products
  • Software design and implementation of reference firmware for Arm processors and systems – for example working on the software to enable our cutting-edge CoreLink secure subsystems
  • Software stack development to enable Arm IP. This includes implementing HALs, drivers, connectivity, security, power and control components
  • Board support firmware using STM32 and LPC11 microcontrollers
  • Operating system development (Linux, mbedOS, FreeRTOS, etc)
  • Development of reference software and demos for Arm Partners to use and replicate in their own products.
  • Support and maintenance

If you’re interested in:

  • The potential to work on all aspects of product development, from specification to customer release.
  • Eager to learn, willing to give anything a go.
  • The challenges of bringing up a new development board.
  • How to build, test and debug full software stacks on hardware that hasn’t yet been manufactured
  • Gaining a deeper understanding of system architecture and performance
  • Working alongside system hardware designers to develop the best platforms to support Arm’s partners

Then we have a role for you!

What will I be accountable for?

As a Graduate, you will be placed in a development team at Arm’s offices in Cambridge, UK where you will have a mentor, and be able to get to grips with the problems ranging across many software areas.  You will be working across all aspects of the software lifecycle whilst being supported by and learning from the rest of the team.  You will also be offered the opportunity to explore other teams within Arm during your first 12 months with us, as part of our Graduate Rotation programme.

Whilst a lot of our work does involve Open Source software, many tasks require working with development platforms, or simulated hardware environments where features are being developed and tested before the physical devices have been built, so the problems you will be expected to understand and solve are ones that are yet unknown to the general community.




software engineering

Graduate Deployment Engineer, Graduates, Cambridge, UK, Software Engineering

We are an Equal Opportunity Employer and do not discriminate against any employee or applicant for employment because of race, color, sex, age, national origin, religion, sexual orientation, gender identity, status as a veteran, and basis of disability or any other federal, state or local protected class.

The Productivity Engineering group (PE) at ARM is responsible for ensuring our engineering teams have the tools and computational resources to succeed. PE is responsible for a range of best in class infrastructure elements for ensuring our designs meet our partners' needs, from maintaining ARM's compute cluster to deploying new design and verification methodologies.

Within PE, the Deployment Team is responsible for enabling all engineering teams with new capability improvements required to achieve the organizational change initiatives.

• Journey to Cloud – moving engineering workflows to cloud and onto Arm architecture hardware
• Machine Learning / Data Science to maximize verification compute efficiency
• Continuous Delivery for Hardware Engineering efficiency
• Machine Readable Specifications for Hardware Engineering efficiency

As a member of the centralized Deployment Team, you will develop expertise with the mechanics such that through a partnership with project teams you can deploy a turn key solution. The Deployment Team members need to be both capable engineers and good at working in partnership with other ARM engineering teams.

The activities for this role demand an enthusiastic candidate from either Computer Science or Electrical/Electronics Engineering background with a strong desire to constantly evolve a cross-disciplinary skill set, in particular:
• Design and development of workflow scripts, with result capture and visualization tools
• Collaboration with RTL design and verification engineers to create new point techniques
• Develop automation and flow abstraction methods to enable project team to focus on the application of new capabilities rather than the mechanics.

As a member of a small and dynamic team, you will be working alongside engineers at all our design centers and contributing to the CPU, GPU and interconnect IP at the heart of ARM's success.




software engineering

Graduate Concurrency Architecture Verification Engineer, Graduates, Cambridge, UK, Software Engineering

Concurrency architecture verification engineer

Are you interested in concurrency, CPU design, and verification? Then we have just the opportunity for you.

Arm uses innovative tools [1] for modelling and reasoning about concurrency in our products. 

Those tools serve different purposes, such as: clarifying our architecture specification [2], communicating with our partners, and enabling verification of our CPU hardware designs.

This last point is at the intersection of architectural specification and CPU hardware design, which is where your role would be.

We seek to encourage interaction between those activities within Arm and beyond: by working hand in hand with architects and CPU verification teams to understand their requirements, you will improve our methodology and tools. You will also be in charge of inventing and prototyping new ways to verify pre-silicon designs.

This is an outstanding opportunity if you are interested in:

  • developing open-source tools [3] which benefit the Arm ecosystem and wider communities such as language standard committees, compiler and kernel developers;
  • furthering the understanding of an area that has been the subject of intense research in the last decade;
  • demonstrating the impact of formal models on industrial products.

Our tools are written in Ocaml and C; knowing those languages would be ideal, as well as a working knowledge of Linux, git and RTL.

See also:

[1] https://developer.arm.com/architectures/cpu-architecture/a-profile/memory-model-tool

[2] https://developer.arm.com/docs/ddi0487/latest/arm-architecture-reference-manual-armv8-for-armv8-a-architecture-profile

[3] http://diy.inria.fr

[4] https://github.com/herd/herdtools7/




software engineering

2021 Graduate Software Engineer, Graduates, Cambridge, UK, Software Engineering

Arm has a range of vacancies for enthusiastic graduates with a passion for embedded software development, Open Source software and CPU Architecture. If you have a software background and a willingness to learn, you will be considered for work in one of these areas:

  • Software design and implementation of features for our reference Mali Graphics processors (enabling our next generation Mali mobile IPs for APIs such as GLES, Vulkan, OpenCL, EGL) on Android
  • Compiler development using LLVM for GPGPU kernels
  • Compiler development including open source compilation technology for e.g. Apache TVM targeting Arm's CPUs, GPUs and NPUs.
  • Improvements and performance optimisations for Arm Compute Library and ArmNN.
  • Model Conditioning and sophisticated machine language framework optimisations in frameworks like Tensorflow and Pytorch.
  • Performance analysis of NPUs, GPUs or CPUs
  • Arm Secure Firmware development
  • Software stack development to enable Arm IP.
  • Operating system development (Linux, Zephyr, FreeRTOS, mbedOS, etc)
  • Verification of Arm CPUs using full-stack operating system software
  • Development of Software Tools for CPU Verification using Random Instruction Generation
  • Software optimisation (JIT compilers, Android, ChromeOS, …)
  • Build environments & Automation tooling

If you have an interest in CPU, GPU or NPU architecture and you are passionate about software, whether it’s kernel, driver, application or tools development; If you’d like to know more about how hardware and software interact, then this is an outstanding opportunity for you!

What will I be accountable for?

As a Graduate, you will be placed in a development team at Arm’s offices in Cambridge, UK where you will have a dedicated mentor, and be able to get to grips with the problems ranging across many software areas. You will work across all aspects of the software lifecycle whilst being supported by and learning from the rest of the team.

Whilst a lot of our work does involve Open Source software, many tasks require working with development platforms, or simulated hardware environments where features are being developed and tested before the physical devices have been built, so the problems you will be encouraged to understand and pursue are ones that are yet unknown to the general community.




software engineering

2021 Graduate Modelling Engineer - Cambridge, Graduates, Cambridge, UK, Cambridge, UK, Software Engineering

We have an exciting opportunity for a graduate developer in the GPU modelling team, based in Cambridge. We work with software models which are state-of-the-art representations of our products. They are used by several teams within the company and are delivered externally to some of our partners.

We develop in C++ in a UNIX environment. Working in the GPU modelling team, your role will primarily be to model the functional and performance aspects of our GPUs. You will be working with dedicated and talented people across the globe as part of our multi-site development projects. Your work will have a large impact on the design and quality of our GPUs and ultimately on the success of Arm.

If you would like to shape the future of energy-efficient devices, this is the place to be!

 
 




software engineering

Leslie Eugene Safley Recognized for Dedication to the Field of Software Engineering

Leslie Eugene Safley serves as a senior software quality engineer at the Bechtel Corporation




software engineering

Marquis Who's Who Honors Moumine Ballo, PhD, for Expertise in Software Engineering

Moumine Ballo, PhD, is recognized for his proficiency in electronics engineering and computer graphics




software engineering

Gaurav Ashokbhai Shah Honored for Expertise in Software Engineering and Renewable Energy

Gaurav Ashokbhai Shah is the director of software development at EG4 Electronics




software engineering

John Thielemann Recognized for Dedication to the Field of Software Engineering

John Thielemann serves as the founder and chief executive officer of JOSTALY Technologies LLC




software engineering

Marquis Who's Who Honors Bob McCann for Expertise in Software Engineering

Bob McCann is honored for his expertise in physics, systems engineering, and software engineering




software engineering

Marquis Who's Who Honors Jaisel Salgado Oyola for Expertise in Software Engineering

Jaisel Salgado Oyola is a seasoned software engineering professional who has worked in the fields of banking, intellectual property, and financial risk management




software engineering

Brent M. Dingle, PhD Lauded for Excellence in Software Engineering

Brent M. Dingle, PhD lends years of expertise to his work with RTX and Raytheon




software engineering

Episode 110: Roles in Software Engineering I

This is the first part of a two part topic on roles in software engineering. Michael and Markus discuss role definitions in an corporate environment. For several typical roles we give hints on the expected skills, knowledge, and mindset. In this episode we discuss the roles junior developer, senior developer, and software architect.




software engineering

Episode 112: Roles in Software Engineering II

This is the second part of the two part topic on roles in software engineering. Michael and Markus discuss role definitions in a corporate environment. For several typical roles we give hints on the expected skills, knowledge, and mindset. In this episode we discuss the roles technical lead, technologist, requirements engineer, product manager, and project manager.




software engineering

Episode 149: Difference between Software Engineering and Computer Science with Chuck Connell

Michael discusses with his guest Chuck Connell the differences between software engineering and computer science. What makes software engineering so unpredictable, with so few formal results? And how can we advance the field of software engineering without these results?




software engineering

SE-Radio Episode 237: Software Engineering Radio: Go Behind the Scenes and Meet the Team




software engineering

SE-Radio Episode 317: Travis Kimmel on Measuring Software Engineering Productivity

Kishore Bhatia talks with Travis Kimmel about Engineering Impact: In the age of data-driven decision making, how does one go about measuring, communicating, and improving engineering productivity? We’ll learn from Travis’ experience building data analytics tools in this space, with insights and best practices for engineering teams and business stakeholders for measuring value and productivity.




software engineering

Episode 518: Karl Wiegers on Software Engineering Lessons

Karl Wiegers, Principal Consultant with Process Impact and author of 13 books, discusses specific software development practices that can help you make sure that you don't repeat the same problems he sees time and time again with every customer...




software engineering

Episode 536: Ryan Magee on Software Engineering in Physics Research

Ryan Magee, postdoctoral scholar research associate at LIGO Laboratory – Caltech, joins host Jeff Doolittle for a conversation about how software is used by scientists in physics research. The episode begins with a discussion of gravitational waves...




software engineering

SE Radio 566: Ashley Peacock on Diagramming in Software Engineering

Ashley Peacock, author of the book Creating Software with Modern Diagramming Techniques, speaks with SE Radio host Akshay Manchale about diagrams in software engineering. They discuss the power of diagramming and some reasons we don’t fully use it as often as we should. Ashley contrasts historical use of UML diagrams versus modern diagrams, which don't have hard rules about representations. The episode examines different types of diagrams through an example application and how it could be built with modern tools such as Streamy to simplify the building, versioning, and maintenance of diagrams.




software engineering

SE Radio 609: Hyrum Wright on Software Engineering at Google

Hyrum Wright, Senior Staff Engineer at Google, discusses the book he co-edited, “Software Engineering at Google,” with host Gregory M. Kapfhammer. Wright describes the professional and technical best practices adopted by the software engineers at Google. The wide-ranging conversation investigates an array of topics, including measuring engineering productivity and writing effective test cases. This episode is sponsored by the Algorand Foundation.




software engineering

Introduction to software engineering

Location: Engineering Library- QA76.758.L33 2016




software engineering

Why I Will Always Be Angry About Software Engineering




software engineering

Hear Tom on The Software Engineering Daily Podcast

https://softwareengineeringdaily.com/2021/07/22/stack-overflow-for-teams-a-centralized-knowledge-sharing-and-collaboration-platform-with-tom-limoncelli/

If you've ever googled a CS or programming question, you likely found an answer (or many) on Stack Overflow. Founded in 2008 and named after a common computing error, Stack Overflow empowers the world to develop technology through collective knowledge. More than 100 million people visit Stack Overflow every month making it one of the 50 most-visited websites in the world. Stack Overflow's products include its market-leading knowledge sharing and collaboration platform, Stack Overflow for Teams, in addition to Stack Overflow Reach & Relevance, which is focused on advertising.

Stack Overflow for Teams is a knowledge sharing and collaboration solution that developers and managers already know and trust. It's for companies who need to increase productivity, decrease cycle times, accelerate time to market, and protect institutional knowledge. In this episode we talk with Tom Limoncelli, a manager at Stack Overflow, author, and tech advocate.

Listen to the podcast by clicking here!




software engineering

A 'beautiful experience' in software engineering program and internship

As a graduate student in software engineering, Chandan Shivalingaiah said he values the wealth of opportunities he has at Penn State, including research, an internship and teaching underserved high school students. 




software engineering

Software engineering student overcomes odds to code for Amazon in internship

Daniel Kumankumah, a Penn State Great Valley software engineering student, was thrilled to land a competitive summer internship with Amazon. When he faced obstacles, he sought help from his team and succeeded in solving coding problems while gaining valuable experience, he said.




software engineering

2018 IEEE 11th Workshop on Software Engineering and Architectures for Real-time Interactive Systems (SEARIS) [electronic journal].




software engineering

2017 IEEE 10th Workshop on Software Engineering and Architectures for Realtime Interactive Systems (SEARIS) [electronic journal].