How does Bitcoin get developed?
Originally, Bitcoin was developed by its creator, Satoshi Nakamoto. After Nakamoto disappeared in April 2011, the Bitcoin client evolved into the Bitcoin Core project which is now developed by the loosely organized Bitcoin Core contributors. There are also a number of alternative Bitcoin implementations today, but the majority of Bitcoin nodes run some version of Bitcoin Core. This makes Bitcoin Core the de facto "specification" of the Bitcoin consensus code.
Bitcoin Core contributors discuss pull requests, issues, and features in various venues including the bitcoin/bitcoin
GitHub repository and #bitcoin-core-dev on IRC. Another important communication channel is the Bitcoin developer mailing list which is used to discuss any Bitcoin implementations and especially Bitcoin Improvement Proposals (BIPs). BIPs are additionally collected in the BIPs repository (which is part of the Bitcoin organization on GitHub, but a separate repository from the Bitcoin Core source code).
All of the work happens in public, allowing anyone to watch what happens and to start contributing at whim. In practice, Bitcoin Core development has involved a few hundred people in the past years, while the broader industry probably employs a couple magnitudes more people to work on related opensource or proprietary projects such as e.g. services, wallets, shops, research, infrastructure projects, exchanges, documentation, education, entertainment, news, and lobbying.
How do users agree?
Each Bitcoin full node enforces the network's consensus rules individually. This means that any effort to change consensus rules requires convincing users to run different software.
E.g. the Bitcoin Core client does not have an auto-update function, so each time a new version is released, Bitcoin Core users explicitly decide whether to run it. In the past, alternative Bitcoin clients have occasionally provided a larger share of the Bitcoin node population when there were major disagreements about the direction Bitcoin's network should get evolved in.
Besides picking the software they run, Bitcoin users engage with development efforts via numerous online communities, news magazines, conferences, meetups, and other social media, or by funding specific efforts they wish to further.
Related reading