Adrian Nieć
Mobile Security
Samsung Poland Research Institute
For Adrian and Bartosz at Samsung, software running on embedded systems—powering mobile phones, cars, and IoT devices—presents complex needs that require a specialized approach to DPE. In this talk, learn why Samsung created Code Aware Services (CAS) to bring forward data about builds and source code to further refine their developer productivity metrics and initiatives.
About the session
For Adrian and Bartosz at Samsung, software running on embedded systems—powering mobile phones, cars, and IoT devices—presents complex needs that require a specialized approach to DPE. In this talk, learn why Samsung created Code Aware Services (CAS) to bring forward data about builds and source code to further refine their developer productivity metrics and initiatives.
Watch the video
Software systems powering OS kernels, basebands, bootloaders, firmware, IoT or automotive build the foundation of infrastructure that billions of people rely on every day. Developing and maintaining such systems is challenging as they usually consist of a very large number of source files, have multiple configurations, hundreds of modules and various custom build steps. Therefore, tools that help engineers navigate through the growing complexity of low-level systems are highly desirable.
In this talk, we present various developer productivity engineering (DPE) techniques that we developed and used in the last few years to ensure high performance and effectiveness of engineers working on the system layer of the OS. The cornerstone of these techniques is our novel Code Aware Services (CAS) toolchain which opens up new possibilities for DPE-related applications.
CAS is a set of tools for extracting information from the build process and the source code. This includes data such as how a particular software image is created or information on functions, types and dependencies across them. CAS makes this data easily accessible to external applications.
In the talk, we will first present core components of CAS: low-overhead build tracer module, clang-based source code processor and Python libraries used for application development. Then, we will talk about selected DPE techniques and tools developed on top of CAS.
One DPE tool we will present is Build Awareness Service: a system which provides detailed information acquired during the full build of a product. We will demonstrate how this information could be used to improve various aspects of S/W Engineer’s job:
Adrian Nieć is Principal Software Developer in Mobile Security at Samsung Electronics Poland R&D. During his career at Samsung, he’s worked on a variety of projects, like low level FOTA solutions, device power managing, but also in Cloud division.
For the last six years, his role has been head hardware and software infrastructure developer for a team of security researchers responsible for all infrastructre layers, from bare metal deployment up to distributed server computing.
Adrian developed numerous in-house tools, database solutions, and distributed systems tailored for team needs.