Open in app

Sign In

Write

Sign In

Júlio Zynger
Júlio Zynger

165 Followers

Home

About

Published in ProAndroidDev

·Jun 30, 2020

SQLite: when Insert means Delete

Modernizing some of SoundCloud’s Android app storage layers, I’ve been especially invested in databases, and have been migrating a lot of the core entities of the app between our in-house ORM and industry-known alternatives, as Room and SQLDelight. There are many parts to that work, ranging from understanding the current…

Sqlite

4 min read

SQLite: when Insert means Delete
SQLite: when Insert means Delete
Sqlite

4 min read


Jun 16, 2020

FloorPlan: Visualize database evolution

Easier peer reviews and documentation-as-code — At SoundCloud, we are around 20 Android engineers, working in a multi-module project with more than 10 databases, with multiple tables each. And that’s only the Android app! As software matures, more functionality is added, code gets moved, re-written or removed. In the same rhythm, team members change and with…

Database

3 min read

FloorPlan: Visualize database evolution
FloorPlan: Visualize database evolution
Database

3 min read


Mar 23, 2020

Be a good client: request prioritization

The story is more common than it seems: a new feature is developed and tested extensively in-house, but only when the client applications are deployed, the engineering team discovers the extra production load and seasonal request rate. A hot-fix is needed! …

Resilience

5 min read

Be a good client: request prioritization
Be a good client: request prioritization
Resilience

5 min read


Mar 11, 2020

Be a good client: retries

When a request to a server fails, it is very tempting to issue another try to the same route, as a way to increase reliability of systems or mask transient problems to the end-users. How often is this a good idea? Never. Well, more or less. Today, many RPC libraries…

Software Development

4 min read

Be a good client: retries
Be a good client: retries
Software Development

4 min read


Mar 4, 2020

Be a good client: jitter

Periodically triggered jobs are very common in modern applications, especially in the client-server model: uploading notes, analytics events or backing up data are good examples of timely operations that a developer might decide to trigger at a specific rate, for example once per hour, or at 3 a.m. …

Resilience

3 min read

Be a good client: jitter
Be a good client: jitter
Resilience

3 min read


Oct 30, 2019

Media Projection and Audio Capture

Starting from Android Lollipop, developers have an API that can be used to capture parts or the entire visualization of a device’s screen: MediaProjection. James O’Brien gave a great description of that usage in this article. From Android 10, the MediaProjection API was extended to support the audio capture use-case…

Android

5 min read

Media Projection and Audio Capture
Media Projection and Audio Capture
Android

5 min read


Apr 23, 2019

Native Code and Debug Symbols

It is a common misconception to think that software development is all about writing code, but in reality, that is not where engineers invest most of their time. Instead, most of the effort is put in designing the application and understanding how it behaves once it is deployed. As applications…

Android App Development

4 min read

Native Code and Debug Symbols
Native Code and Debug Symbols
Android App Development

4 min read


Jun 18, 2018

Your app and low-latency audio output

When building any software, we want to provide the best possible experience to our users, giving them the feeling of being in full control and taking the most value out of our applications. …

Android

7 min read

Your app and low-latency audio output
Your app and low-latency audio output
Android

7 min read


May 18, 2017

Extending the Web with Android Instant Apps

During I/O 2016, Google announced it was developing a new way to bridge the gap between the web and native apps, by making them as easy to access as a simple click in a link: Instant Apps, made of small data-chunks that can be temporarily loaded on the device with…

Android

8 min read

Extending the Web with Android Instant Apps
Extending the Web with Android Instant Apps
Android

8 min read


Published in Android Dev BR

·May 10, 2016

Continuous Deployment no Android: como usar a Publishing API para automatizar seu release

Apesar de uma prática já bem estabelecida dos círculos de desenvolvimento de software, principalmente do lado back-end, a Entrega Contínua (Continuous Delivery, no inglês) e a Implantação Contínua (Continuous Deployment) ainda dão seus primeiros passos no desenvolvimento mobile. Neste artigo, vou apresentar a Publishing API (que faz parte da Google…

Android

9 min read

Continuous Deployment no Android: como usar a Publishing API para automatizar seu release
Continuous Deployment no Android: como usar a Publishing API para automatizar seu release
Android

9 min read

Júlio Zynger

Júlio Zynger

165 Followers
Following
  • Luiz Coelho

    Luiz Coelho

  • Camille Fournier

    Camille Fournier

  • Pedro Cortez

    Pedro Cortez

  • Carlos Martins-Martins

    Carlos Martins-Martins

  • Erico Darwiche Silva

    Erico Darwiche Silva

Help

Status

Writers

Blog

Careers

Privacy

Terms

About

Text to speech