How statistics are calculated
We count how many offers each candidate received and for what salary. For example, if a NFT developer with JSON with a salary of $4,500 received 10 offers, then we would count him 10 times. If there were no offers, then he would not get into the statistics either.
The graph column is the total number of offers. This is not the number of vacancies, but an indicator of the level of demand. The more offers there are, the more companies try to hire such a specialist. 5k+ includes candidates with salaries >= $5,000 and < $5,500.
Median Salary Expectation – the weighted average of the market offer in the selected specialization, that is, the most frequent job offers for the selected specialization received by candidates. We do not count accepted or rejected offers.
Trending NFT tech & tools in 2024
NFT
NFT in crypto
An NFT (Non-Fungible Token) is a unique asset on a blockchain that signifies ownership of a digital piece of art, audio or video file. In contrast to mass-produced cryptocurrencies such as Bitcoin which can be traded interchangeably, NFTs represent unique units that cannot be passed off as identical products; you cannot exchange your Eminem NFT for another: it is non-fungible and unique. NFTs can act as registration certificates that create a digital chain of ownership, although proof of ownership alone does not equate to actual ownership.
As NFTs have sprung up and blossomed lately, they’ve started to radically shift the paradigm of what it means to own digital goods and the inherent value they carry. This has also given rise to hundreds of NFT marketplaces – essentially, websites that serve as digital storefronts to exhibit, trade, or buy NFTs. The technology behind them seems to have found a niche, and it’s got wide-ranging applications.
What are NFT marketplaces?
These are where NFTs can be stored, displayed, traded, and often even minted (ie, created). NFT marketplaces are to NFTs what Amazon or eBay are to goods.
To access and use these types of marketplaces, you will want to set up the following:
- A crypto wallet: you’ll need this to hold your crypto tokens, essentially your digital wallet, which must be compatible with a network on which the NFTs you want to buy/sell are held (below). For example, if you’re planning on buying, selling, or minting NFTs that are based on the blockchain network called Ethereum, then you will need to get a compatible Ethereum wallet such as MetaMask.
- How many coins are in your virtual wallet? If you want to purchase, publish, or mint an NFT, you’re going to have to put some money into your crypto wallet. Once again, it depends on what marketplace you’re planning to use – you’ll need to find out which cryptocurrencies they support.
- A user account: You need to create an account on the chosen market where NFTs are being bought and sold.
However, creating and listing an NFT on a marketplace generally means paying a blockchain network fee. The cost depends on the blockchain-native system you’re using. Ethereum enables the largest ecosystem of NFT dapps (decentralized applications) but has the highest fees.
NFT blockchain options
Note how the leader here is Ethereum: it is by far the most used system for purchasing selling and creating unique items that are solely held digitally. There are, however, other competitors on the market too: note the following:
- Binance Smart Chain
- Flow (by Dapper Labs)
- Tron
- EOS
- Solana
- Polkadot
- Tezos
- Algorand
- Cosmos
- WAX
How do these marketplaces work?
Signing up
Joining an NFT marketplace will look slightly different from site to site, but in general, you just need to create an account (or ‘sign in’ using one that you already have) or you might be able to just use a wallet that the NFT marketplace supports (or a new one you created for the purpose). You’ll be directed to a page where you Connect your wallet. Once your wallet is connected, you’ll be prompted to enter your wallet password (if it’s not auto-filled) to complete the process.
Buying an NFT
NFTs are bought outright for a certain price, through an auction, or (in some cases) presented to a specific owner and another bidder may make a bid in an attempt to acquire the asset at a lower price.
Selling an NFT
Selling is more technically complicated, especially for someone selling an NFT they’ve created themselves (an artwork, a soundtrack, a tweet, etc).
It means that you have to upload this individual digital asset to the platform and add a fixed price on it, or let the buyer bid for it during an auction.
Then the asset will be verified by the platform and can be listed for sale.
When the seller agrees with a bid, the marketplace executes the transfer from the buyer to the seller.
Minting an NFT
A potential first step toward minting an NFT might be Ethereum, which remains the most prominent system on which such tokens are used. You need an Ethereum wallet with native support of ERC-721 (the Ethereum token standard underpinning NFTs). One such wallet is MetaMask or also Trust Wallet or Coinbase Wallet. You also need to stash about $50-$100 of ethers in your wallet to cover transaction costs (the higher the network congestion, the steeper the fees).
After doing so, you can then begin using OpenSea, Rarible, or any other such platform. Usually, to open the dashboard where you can start minting, you’ll press a button in the top-right corner that reads ‘Create’ or similar.
Types of NFT marketplaces
Within this ecosystem, there are different types of marketplaces: the universal types, like OpenSea, are the most general, the art-focused ones are specialized, and then there are niche ones that list specific traits of non-fungible assets, such as in-game items, digital collectible cards, or virtual real estate.
Here are some popular universal and digital art-oriented NFT marketplaces currently available:
- OpenSea: The most established universal NFT marketplace is here at OpenSea, where you’ll find non-fungible tokens representing ownership of things as diverse as art, sporting collectibles, virtual worlds, trading cards, and domain names.
- Rarible: purchasing it enables replicated purchasing by others below it on the chain It’s an NFT marketplace where you or anyone else can make an NFT on one of three different blockchains, either Ethereum, Tezos, or Flow.
- SuperRare: A similar market is online at SuperRare, which specializes in digital art and works only with a handful of concept artists. Each work on sale is a unique one-of-one NFT.
- Nifty Gateway: Nifty is one of the biggest marketplaces for NFT objects. There you will find artwork from prominent artists, including the owner of the record for the most expensive NFT sold at $69 million – Beeple, and the electronic music producers Steve Aoki and deadmau5.
These are all things that could be swept up in the definition of an NFT. Still, for niche digital goods such as virtual world avatars or digital trading cards for games like fantasy football, there is a distinctly growing number of platforms vying for the attention of each digital market there – but the majority of retail NFT sales are still conducted on five platforms:
- NBA Top Shot: an NFT marketplace on Flow for buying and selling digital collectible cards of videos of memorable NBA ‘moments’.
- Axie Infinity: These are based around a digital game called Axie Infinity, in which people breed, battle, and trade cartoon pets called ‘Axies’, and in which some play professionally for a living.
- Sorare: tokens representing football players you can use in the fantasy football game Sorare.
- Decentraland features an in-house marketplace where players can buy and sell virtual land, in-game items such as wearables, and other digital experiences.
- Treasures: A website that lets users tokenize a tweet and then sell it as an NFT. For example, Twitter CEO Jack Dorsey sold his first tweet for $2.9 million.
Where is JSON used?
APIs: The Chatty Kathy of Software
- JSON turns APIs into gabby gossips, letting them blab data between services like they're swapping juicy stories over a digital fence.
Config Files: The Lifestyle Coaches for Apps
- In the realm of config files, JSON is the life coach, whispering sweet nothings to apps about how they should behave and strut their code.
Web Storage: The Secret Diary Keeper
- Like a digital diary, JSON helps web storage keep secrets in neat, tidy JSON objects, ready to spill the beans whenever the browser reminisces.
Server Logs: The Overly Detailed Memoir Authors
- Server logs pen their tedious life stories in JSON format, ensuring every "Dear Diary" moment is captured for the nerdy sysadmins to later enjoy.
JSON Alternatives
XML (Extensible Markup Language)
Structured data format widely used for web services, configurations, and data interchange. Verbose compared to JSON. Example: configuration files, SOAP.
<person>
<name>John</name>
<age>30</age>
<city>New York</city>
</person>
- Human-readable and self-descriptive.
- Supports namespaces and complex structures.
- Verbose, leading to larger file sizes.
- Parsing can be slow.
- Widely supported in legacy systems.
YAML (YAML Ain't Markup Language)
Human-friendly data serialization standard, often used for config files and applications that require data to be stored or transmitted. Example: CI/CD configurations, Docker compose.
person:
name: John
age: 30
city: New York
- Very human-readable.
- Allows comments, enhancing document context.
- Indentation-based, which may lead to errors.
- Can be ambiguous in complex structures.
- Supports complex data types natively.
Protocol Buffers
Language-neutral, platform-neutral serialization technique developed by Google. Used for storing and interchanging structured data. Example: gRPC, efficient data storage.
message Person {
string name = 1;
int32 age = 2;
string city = 3;
}
- Very efficient data encoding.
- Strict schema enforced, minimizing ambiguity.
- Requires pre-defined schema and generated code.
- Binary format, not human-readable.
- Excellent for large-scale systems.
Quick Facts about JSON
A Little Bit of JSON's Genesis
Once upon a byte, when the world was in deep need of a lightweight data-interchange format, JSON came to the rescue. Birthed in the cyber womb of Douglas Crockford's brain in the early 2000s, JSON, or JavaScript Object Notation, came into existence. Unlike its bulky cousin XML, JSON donned a svelte figure which made it a darling of web developers for data trafficking. Clever and unassuming, JSON wasn't officially a "thing" until 2001, but its seeds were planted in JavaScript's ECMA-262 standard—because, you know, parentage matters in the tech lineage!
JSON's Coming of Age Saga
Now, let's fast-forward to 2013. By then, JSON's been strutting around the internet for over a decade. Its gawky years are behind it and JSON finally gets the recognition it deserves! Enter the JSON standard: ECMA-404. It's like getting a certification from the big league that says, "Yeah, kid, you made it!". Now officially anointed, JSON wasn't just a convenient format, it became a textbook example—literally—in the developer’s arsenal. Major plot twist, eh?
JSON's Syntax Shenanigans
Delving into the nitty-gritty, JSON's syntax is a smorgasbord of arrays and objects, sizzling like bacon with key-value pairs. It's as easy as declaring a JavaScript object, but don't be fooled—JSON plays hard-to-get with other languages. While it wears JavaScript's jersey, it boasts of language independence, meaning it can mingle with Python, Ruby, and even PHP! Behold JSON's magic spell:
{
"wizard": "Harry Potter",
"muggle-born": true,
"wand": {
"core": "Phoenix feather",
"material": "Holly",
"length": 11
}
}
Voilà! A simple JSON object that could stir up a potion for easy data exchange. Just remember, a missing comma or an extra curly brace and your JSON turns into a Gremlin after midnight—utterly chaotic.
What is the difference between Junior, Middle, Senior and Expert JSON developer?
Seniority Name | Years of Experience | Average Salary (USD/year) | Responsibilities & Activities |
---|---|---|---|
Junior Developer | 0-2 | 50,000 - 70,000 |
|
Middle Developer | 2-5 | 70,000 - 95,000 |
|
Senior Developer | 5-10 | 95,000 - 140,000 |
|
Expert/Team Lead | 10+ | 140,000+ |
|
Top 10 JSON Related Tech
JavaScript
Ah, the bread and butter of web development, JavaScript. It's like the swiss army knife for anyone dabbling in JSON's world. You see, JSON is JavaScript Object Notation, so it's no surprise that they go together like peanut butter and jelly. If JSON were a celebrity, JavaScript would be the paparazzi - always around and deeply interested. Handling JSON in JavaScript is a no-brainer:
var jsonData = '{"name": "Monty", "isPython": false}';
var obj = JSON.parse(jsonData);
console.log(obj.name); // Outputs: Monty
Python
Python slithers its way into JSON handling with such elegance, it makes you want to whisper sweet nothings into its interpreter. It's the gentle giant of programming languages; powerful yet so readable that it feels like pseudo-code. Python treats JSON like it's one of its own dictionaries, which is a type so fitting you'd think JSON was Python's long-lost sibling:
import json
jsonData = '{"name": "Monty", "isPython": true}'
obj = json.loads(jsonData)
print(obj['name']) # Outputs: Monty
Node.js
If JavaScript is the cool kid at school, Node.js is its older, hipster sibling who wears flannel and listens to vinyl records. Node.js takes JavaScript outside the confines of a browser and lets it roam free in the server-side world! JSON is treated with first-class citizenship in Node.js, allowing for seamless parsing and stringifying:
const jsonData = '{"name": "Monty", "isPython": false}';
const obj = JSON.parse(jsonData);
console.log(obj.name); // Outputs: Monty
Express.js
Imagine you're building a clubhouse. Now, Node.js provides the land (server-side environment), but Express.js is the one that actually gives you the tools to build it (framework for web apps). It's like the helpful hardware store guy but for HTTP servers. Handling JSON in Express is smoother than a fresh jar of Skippy, made even easier with built-in middleware:
const express = require('express');
const app = express();
app.use(express.json());
app.post('/api/data', (req, res) => {
console.log(req.body); // req.body is already a parsed JSON object
res.send('JSON received!');
});
jQuery
jQuery may seem like the grandpa of the JS library family, but it's the type of grandpa who's got secret ninja skills. It made working with JS so easy back in the day, it was like throwing a Hadouken in Street Fighter – everyone did it. Even though it's not the coolest kid on the block anymore, it still offers handy AJAX methods for JSON:
$.getJSON('/api/data', function(data) {
console.log(data); // Boom! JSON magic.
});
REST APIs
RESTful services are the gossip queens of the internet; they love to talk and share data. REST APIs and JSON are BFFs because they communicate data in a stateless, cacheable, and platform-independent manner. Curl up with a good URL, send an HTTP request, and get back that juicy JSON goodness:
fetch('https://api.someservice.com/data')
.then(response => response.json())
.then(data => console.log(data));
AJAX
AJAX is like the postal service of the web—it lets you send and receive packages (data) without refreshing the page, which is quite the party trick. Need to send some JSON back home to the server? AJAX will sneak it past the refresh police without causing a scene:
const xhr = new XMLHttpRequest();
xhr.open('POST', '/api/data', true);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.send(JSON.stringify({ name: "Monty", isPython: false }));
XMLHttpRequest
Before all these newfangled frameworks and libraries, there was XMLHttpRequest (XHR), a valiant knight in the realm of AJAX. It may be a bit long in the tooth now and look like alphabet soup, but XHR was the one you called when you needed to make raw HTTP requests to exchange data, and yes, it can handle JSON too:
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.DONE) {
if (xhr.status === 200) {
console.log(JSON.parse(xhr.responseText));
}
}
};
xhr.open('GET', '/api/data', true);
xhr.send();
Fetch API
The Fetch API is the cool new kid that moved into XMLHttpRequest's neighborhood. It's like the SpaceX to NASA, sending requests with promises that make dealing with responses easier than fitting in on your first day at school. Wanna be a part of the in-crowd? Use Fetch to work with JSON:
fetch('/api/data')
.then(response => response.json())
.then(data => console.log(data));
JSON Schema
Last but not least, think of JSON Schema as the bouncer at a club—it decides what JSON gets to pass through the velvet ropes based on its shape and size. JSON Schema validates the structure of your JSON data, so you don't end up with a string when you're expecting an integer. Keeping your JSON in check never looked so professional:
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"name": {
"type": "string"
},
"isPython": {
"type": "boolean"
}
},
"required": ["name", "isPython"]
}