Skip to footer
Home Authors Posts by Lazaro Clapp

Lazaro Clapp

2 BLOG ARTICLES 2 RESEARCH PAPERS
Lazaro Clapp is a senior engineer on Uber's Programming Systems team. His current focus is to improve application reliability by preventing broad categories of bugs using fast type-system based tools, as well as dynamic bytecode-level instrumentation of end-to-end tests. His research interests more broadly include static and dynamic analysis, modeling of third-party code behavior, as well as automated test generation and UI exploration for mobile applications. http://lazaroclapp.com/

Engineering Blog Articles

Handling Flaky Unit Tests in Java

Introduction to Flaky Tests

Unit testing forms the bedrock of any Continuous Integration (CI) system. It warns software engineers of bugs in newly-implemented code and regressions in existing code, before it is merged. This ensures increased software reliability. It also

Introducing Piranha: An Open Source Tool to Automatically Delete Stale Code

At Uber, we use feature flags to customize our mobile app execution, serving different features to different sets of users. These flags allow us to, for example, localize the user’s experience in different regions where we operate and, more importantly,

Research Papers

NullAway: Practical Type-Based Null Safety for Java

S. Banerjee, L. Clapp, M. Sridharan
NullPointerExceptions (NPEs) are a key source of crashes in modern Java programs. Previous work has shown how such errors can be prevented at compile time via code annotations and pluggable type checking. However, such systems have been difficult to deploy on large-scale software projects, due to significant build-time overhead and / or a high annotation burden. This paper presents NullAway, a new type-based null safety checker for Java that overcomes these issues. [...] [PDF]
The ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (FSE), 2019

Safe stream-based programming with refinement types

B. Stein, L. Clapp, M. Sridharan, B.-Y. E. Chang
A type-based approach that can statically prove the thread-safety of UI accesses in stream-based software. We implement the system as an annotation-based Java typechecker for Android programs built upon the popular ReactiveX. We evaluate on 8 open-source apps and report on our experience applying the typechecker to two much larger apps from the Uber. [...] [PDF]
IEEE/ACM International Conference on Automated Software Engineering (ASE), 2018

Popular Articles