Tag: Java
Tricks of the Trade: Tuning JVM Memory for Large-scale Services
Uber engineers share their learnings on how to tune a Java Virtual Machine so as to avoid long pauses and other issues with garbage collection.
Gaining Confidence and Improving Android Developer Workflows as a Software Engineering Intern at Uber
Ankit Agrawal reflects on his internship with Uber Engineering, working on the Developer Experience team to build a feature that would highlight code errors in an IDE.
Measuring Kotlin Build Performance at Uber
To determine if it made sense to adopt Kotlin for our Android monorepo, Uber's Mobile Engineering team measured Kotlin build performance at scale across a variety of project structures.
Introducing Nanoscope: An Extremely Accurate Method Tracing Tool for Android
Uber's Mobile Engineering team open sources Nanoscope, a new method tracing tool for Android that enables developers to more accurately debug difficult performance issues.
Building Check-In Queuing & Appointment Scheduling for In-Person Support at Uber
Uber's Customer Obsession Engineering team developed new check-in queuing and appointment systems to improve the customer experience for driver-partners at our Greenlight Hubs.
Engineering NullAway, Uber’s Open Source Tool for Detecting NullPointerExceptions on Android
Uber Engineering built and open sourced NullAway, our fast and practical tool for eliminating NPEs, to help others deploy more reliable Android apps.
Meet Michelangelo: Uber’s Machine Learning Platform
Uber Engineering introduces Michelangelo, our machine learning-as-a-service system that enables teams to easily build, deploy, and operate ML solutions at scale.
How Uber Engineering Verifies Data at Runtime with the Annotations You Already Use
In 2016, Uber Engineering built and open sourced RAVE, a data model validation framework for Android that leverages Java annotation processing to protect against crashes caused by invalid data.
Demystifying RxJava Backpressure on Android at Uber Engineering
In this article, Uber Engineering shares our best practices for relieving RxJava backpressure on Android through targeted operators, more forgiving RxJava 1.x configurations, and RxJava 2.x.
Evolving Distributed Tracing at Uber Engineering
This article is about developing Uber Engineering's open source distributed tracing system, Jaeger.