话题公司 › 字节跳动

公司:字节跳动

北京字节跳动科技有限公司,简称字节跳动,是一家位于中国北京的跨国互联网技术公司,成立于2012年3月,旗下有产品媒体聚合服务今日头条和短影音抖音(及其海外版本TikTok)、西瓜视频、社交平台Lemon8等,也有一些加入人工智能技术的专业生产力软件,例如剪映、办公套装拉客(lark,中国版本称飞书)等业务。

至2018年,字节跳动的移动应用月度用户超过十亿人,估值750亿美元,超越Uber成为全球最有价值的创业公司。截至2019年7月,字节跳动的产品和服务已覆盖全球150个国家和地区、75个语种,曾在40多个国家和地区位居应用商店总榜前列。

在中国互联网企业中,字节跳动是第一家没有向阿里巴巴、腾讯或百度寻求商业保护或融资的创业公司;相反地,字节跳动被认为与百度、腾讯两大巨头有强烈的竞争关系,因字节跳动资金主要来源于抖音和今日头条的广告收入。

至2020年3月,字节跳动已经有六万员工,并计划再增员一万人。投资人和内部消息将字节跳动2019年的营收定在1,040亿元至1,400亿元人民币,超过了Uber、Snapchat和推特的总和。在中国,其广告收入也超越了腾讯、仅次于阿里巴巴。抖音的全球下载量达1.15亿次,固定用户近10亿。

西瓜视频稳定性治理体系建设三:Sliver 原理及实践

卡顿和 ANR 问题一直是 Android 性能优化的重点问题,直接关系到用户体验。当主线程的消息执行耗时过长时,轻则出现不流畅,不跟手,重则有肉眼可见的卡顿感,最严重则是发生 ANR,系统会弹出弹窗提示用户等待或关掉程序,严重影响用户体验。

对于卡顿的监控,现有的方案大多是在消息执行前埋点,当消息耗时过长时进行抓栈操作,ANR 的监控则是通过监听 SIGQUIT 信号并判断进程状态,在 ANR 时拿到各线程堆栈及各类辅助信息来定位问题。这种抓堆栈的方案对于单点长耗时是有效果的,比如锁等待和死锁,但是对于由多个消息和函数耗时累积造成的 ANR,一次堆栈是无法定位问题的,所以经常会出现 ANR 堆栈不准的情况。

西瓜视频的 Android TOP 1 ANR 就是聚类到了 nativePollOnce,根据 ANR 前的消息调度耗时可以看到存在许多长耗时消息,这些长消息是造成 ANR 的根本原因,而不是真的阻塞在了 nativePollOnce。分析发现其实这部分问题都是由于抓栈时机滞后导致的,从感知到 ANR 到完成抓栈存在一定的时间间隔,很容易错过现场,而 nativePollOnce 是主线程中执行频率最高的函数,抓栈很容易落到这里,所以导致很多 ANR 都是 nativePollOnce 的堆栈。另外传统的监控方案对于多个耗时消息累积导致的 ANR 也很难做到有效监控,单次抓栈大概率无法明确问题。所以如果能拿到 ANR 前的一段时间的 Method Trace,那么就能看到主线程到底在做什么,进而准确定位问题。

抖音音乐在跨端性能及异常监控上的实践

抖音音乐业务在端内开展 Hybrid 场景时,就选择了 Lynx 技术框架。得益于公司自研,业务在监控上有了非常多的自主性。针对实际业务场景,从用户视角出发,定制了一套业务监控指标。

“后门”寻找之旅:表里不一的Android权限认证机制

议题聚焦Android权限管控机制的一些常见问题和设计缺陷,通过历史多个安全漏洞,提出了系统权限管控设计的4条基本原则,以此来提醒和帮助厂家提高系统权限认证模型的安全性。

Flutter 疑难杂症系列:实现中文文本的垂直居中

通过代码自适应的方式实现文本的垂直居中,避免了针对不同字体、字号及手机的适配工作。

前端 debug 的奇技淫巧

找 bug 的方式都不是很高效,导致最终 bug 找不到或者走了很多弯路。

字节跳动大规模埋点数据治理最佳实践

流量平台已经覆盖了 2000 多个应用,管理埋点(事件)数 20 万,每天产生的埋点数据量超过万亿。

奔跑吧!智能Monkey之Fastbot跨平台

近年来 AI+Test 相关的智能化测试技术,已经逐步成为国内·国际大型互联网公司和各大测试服务提供商的基础能力。其智能化包含测试代码的自动生成、大规模测试结果分析、自动化探索性测试、缺陷定位及修复等。相关公司、产品或服务比较有代表性的有:Test.AI、Applitool、Totoro、Eggplant、Appdiff 等。

「番茄原创」体验设计

过去的一段时间,团队希望打造有温度、有人情味的产品设计,力求在追求高效的同时也能传递出沉浸、有趣味的设计体验。

从零开始手写一个「开箱即用的大文件分片上传库」

各位小伙伴可能遇到过「大文件上传」的场景,在这种场景下,我们需要采用「大文件分片上传」的技术方案。但是我发现已有的一些分片上传库的使用体验都不太好,因此在这里从零开始手写一个大文件分片上传库,一是加深理解,二是方便大家后续直接使用。

大家来找茬:记一起 clang 开启 -Oz 选项引发的血案

编译器作为一个复杂的软件也会有 bug,也会有各种兼容性和正确性的问题,这里我们分享一则开启 clang 的 -Oz 优化选项时发现的编译器缺陷。

Android / iOS Webview 容器下 JSBridge SDK 原理浅析 —— 前端视角

在 Hybrid 开发的过程中,由于前端和客户端同学存在认知差异,导致在解决一些 bridge 问题时存在一定的沟通成本和信息不对称。本文从前端视角切入,讲述 bridge 方法如何和客户端进行交互,以及在此过程中进行的各种中间处理。

聊聊字节跳动 Node.js RPC 的设计实现

对于 RPC 的一种重新思考,还会设计细节、拆解、落地遇到问题。

你竟然是这样的端智能?

本文将谈谈端智能以及端智能在西瓜视频的发展。

西瓜客户端埋点实践:基于责任链的埋点框架

目前互联网/软件行业内,广泛使用数据驱动产品迭代,通过精细的数据分析、模型训练为用户提供更好的服务。在此过程中,数据埋点的工作是后续数据分析、模型训练等工作的基础。

数据埋点通常是产品经理、数据分析师,以及推荐系统工程师,基于业务需求(例如:广告的下载安装转化),产品需求(例如:关注按钮的曝光次数以及点击的人数)对用户行为的每一个事件确定埋点需求。客户端工程师进行对应的埋点功能开发,通过 SDK 上报埋点的数据结果,后端记录数据进行一系列处理,并汇总后提供给产品经理、数据分析师,以及推荐系统工程师进行数据分析或模型训练,帮助优化产品运营策略。

「后隐私」时代,个性化广告如何保护隐私?

隐私保护越来越受到重视,个性化广告该何去何从?

从场景倒推我们要什么样的微前端体系

微前端已经不是一个新概念了,大家或多或少都听说过接触过,这里不再去做一堆定义,只是对目前业界做法的调研总结 / 概览,这篇文章面向的是还没有在业务中使用过微前端的同学或团队,通过这篇概览,可以简单的建立对 「微前端」的整体认知;

总的来说「微前端」这个概念从造出来到发展如今,还处于一个百花齐放(各做各的)的发展中,没有形成统一的(市场占有高的)共识 / 标准;各个大厂 / 社区对这个概念以及背后的技术都有不同定义,各自为战,造的轮子也一堆。

首页 - Wiki
Copyright © 2011-2024 iteam. Current version is 2.123.1. UTC+08:00, 2024-03-28 16:54
浙ICP备14020137号-1 $访客地图$