Posted on Leave a comment

How to Round a Number Down in Python?

Problem Formulation: Given a float number. How to round the float down in Python?

Here are some examples of what you want to accomplish:

  • 42.52 --> 42
  • 21.99999 --> 22
  • -0.1 --> -1
  • -2 --> -2

Solution: If you have little time, here’s the most straightforward answer:

To round a positive or negative number x down in Python, apply integer division // to x and divide by 1. Specifically, the expression x//1 will first perform normal float division and then throw away the remainder—effectively “rounding x down”.

In general, there are multiple ways to round a float number x down in Python:

  • Vanilla Python: The expression x//1 will first perform normal division and then skip the remainder—effectively “rounding x down”.
  • Round down: The math.floor(x) function rounds number x down to the next full integer.
  • Round down (float representation): Alternatively, numpy.floor(x) rounds down and returns a float representation of the next full integer (e.g., 2.0 instead of 2).
  • Round up: The math.ceil(x) function rounds number x up to the next full integer.
  • Round up and down: The Python built-in round(x) function rounds x up and down to the closest full integer.

Let’s dive into each of those and more options in the remaining article. I guarantee you’ll get out of it having learned at least a few new Python tricks in the process!

Method 1: Integer Division (x//1)

The most straightforward way to round a positive or negative number x down in Python is to use integer division // by 1. The expression x//1 will first perform normal division and then skip the remainder—effectively “rounding x down”.

For example:

  • 42.52//1 == 42
  • 21.99//1 == 21
  • -0.1//1 == -1
  • -2//1 == -2

This trick works for positive and negative numbers—beautiful isn’t it? 🌻

Here are a couple of Python code examples:

def round_down(x): return x//1 print(round_down(42.52))
# 42 print(round_down(21.99999))
# 21 print(round_down(-0.1))
# -1 print(round_down(-2))
# -2

🎓 Info: The double-backslash // operator performs integer division and the single-backslash / operator performs float division. An example for integer division is 40//11 = 3. An example for float division is 40/11 = 3.6363636363636362.

Feel free to watch the following video for some repetition or learning:

Method 2: math.floor()

To round a number down in Python, import the math library with import math, and call math.floor(number).

The function returns the floor of the specified number that is defined as the largest integer less than or equal to number.

💡 Note: The math.floor() function correctly rounds down floats to the next-smaller full integer for positive and negative integers.

Here’s a code example that rounds our five numbers down to the next-smaller full integer:

import math print(math.floor(42.52))
# 42 print(math.floor(21.99999))
# 21 print(math.floor(-0.1))
# -1 print(math.floor(-2))
# -2

The following video shows the math.floor() as well as the math.ceil() functions — feel free to watch it to gain a deeper understanding:

Method 3: np.floor()

To round a number down in Python, import the NumPy library with import numpy as np, and call np.floor(number).

The function returns the floor of the specified number that is defined as the largest integer less than or equal to number.

Here’s an example:

import numpy as np print(np.floor(42.52))
# 42.0 print(np.floor(21.99999))
# 21.0 print(np.floor(-0.1))
# -1.0 print(np.floor(-2))
# -2.0

Both math.floor() and np.floor() round down to the next full integer. The difference between math.floor() and np.floor() is that the former returns an integer and the latter returns a float value.

Method 4: int(x)

Use the int(x) function to round a positive number x>0 down to the next integer. For example, int(42.99) rounds 42.99 down to the answer 42.

Here’s an example for positive numbers where int() will round down:

print(int(42.52))
# 42 print(int(21.99999))
# 21

However, if the number is negative, the function int() will round up! Here’s an example for negative numbers:

print(int(-0.1))
# 0 print(int(-2))
# -2

Before I show you how to overcome this limitation for negative numbers, feel free to watch my explainer video on this function here:

Method 5: int(x) – bool(x%1)

You can also use the following vanilla Python snippet to round a number x down to the next full integer:

  • If x is positive, round down by calling int(x).
  • If x is negative, round up by calling int(x) - bool(x%1).

Explanation: Any non-zero expression passed into the bool() function will yield True which is represented by integer 1.

The modulo expression x%1 returns the decimal part of x.

  • If it is non-zero, we subtract bool(x%1) == 1, i.e., we round down.
  • If it is zero (for whole numbers), we subtract bool(x%1) == 0, i.e., we’re already done.

Here’s what this looks like in a simple Python function:

def round_down(x): if x<0: return int(x) - bool(x%1) return int(x) print(round_down(42.52))
# 42 print(round_down(21.99999))
# 21 print(round_down(-0.1))
# -1 print(round_down(-2))
# -2

Alternatively, you can use the following slight variation of the function definition:

def round_down(x): if x<0: return int(x) - int(x)!=x return int(x)

Method 6: round()

This method is probably not exactly what you want because it rounds a number up and down, depending on whether the number is closer to the smaller or larger next full integer. However, I’ll still mention it for comprehensibility.


Python’s built-in round() function takes two input arguments:

  • a number and
  • an optional precision in decimal digits.

It rounds the number to the given precision and returns the result. The return value has the same type as the input number—or integer if the precision argument is omitted.

Per default, the precision is set to 0 digits, so round(3.14) results in 3.

Here are three examples using the round() function—that show that it doesn’t exactly solve our problem.

import math print(round(42.42))
# 42 print(round(21.00001))
# 21 print(round(-0.1))
# 0

Again, we have a video on the round() function — feel free to watch for maximum learning!

Python One-Liners Book: Master the Single Line First!

Python programmers will improve their computer science skills with these useful one-liners.

Python One-Liners

Python One-Liners will teach you how to read and write “one-liners”: concise statements of useful functionality packed into a single line of code. You’ll learn how to systematically unpack and understand any line of Python code, and write eloquent, powerfully compressed Python like an expert.

The book’s five chapters cover (1) tips and tricks, (2) regular expressions, (3) machine learning, (4) core data science topics, and (5) useful algorithms.

Detailed explanations of one-liners introduce key computer science concepts and boost your coding and analytical skills. You’ll learn about advanced Python features such as list comprehension, slicing, lambda functions, regular expressions, map and reduce functions, and slice assignments.

You’ll also learn how to:

  • Leverage data structures to solve real-world problems, like using Boolean indexing to find cities with above-average pollution
  • Use NumPy basics such as array, shape, axis, type, broadcasting, advanced indexing, slicing, sorting, searching, aggregating, and statistics
  • Calculate basic statistics of multidimensional data arrays and the K-Means algorithms for unsupervised learning
  • Create more advanced regular expressions using grouping and named groups, negative lookaheads, escaped characters, whitespaces, character sets (and negative characters sets), and greedy/nongreedy operators
  • Understand a wide range of computer science topics, including anagrams, palindromes, supersets, permutations, factorials, prime numbers, Fibonacci numbers, obfuscation, searching, and algorithmic sorting

By the end of the book, you’ll know how to write Python at its most refined, and create concise, beautiful pieces of “Python art” in merely a single line.

Get your Python One-Liners on Amazon!!

Posted on Leave a comment

How to Create a Dictionary from two Lists

In this article, you’ll learn how to create a Dictionary from two (2) Lists in Python.

To make it more fun, we have the following running scenario:

Biogenix, a Lab Supplies company, needs to determine the best element from the Periodic Table for producing a new product. They have two (2) lists. The Element Name, the other Atomic Mass. They would prefer this in a Dictionary format.

For simplicity, this article uses 10 of the 118 elements in the Periodic Table.

💬 Question: How would we create a Dictionary from two (2) Lists?

We can accomplish this task by one of the following options:


Method 1: Use dict() and zip()

This method uses zip() to merge two (2) lists into an iterable object and (dict()) to convert it into a Dictionary as key:value pairs.

el_name = ['Meitnerium', 'Darmstadtium', 'Roentgenium', 'Copernicium', 'Nihonium', 'Flerovium', 'Moscovium', 'Livermorium', 'Tennessine', 'Oganesson']
el_atom = [277.154, 282.166, 282.169, 286.179, 286.182, 290.192, 290.196, 293.205, 294.211, 295.216] merge_lists = zip(el_name, el_atom)
new_dict = dict(merge_lists) for k, v in new_dict.items(): print ("{:<20} {:<15}".format(k, v))
  • Lines [1-2] create two (2) lists containing the Element Name (el_name) and corresponding Atomic Mass (el_atom), respectively.
  • Line [3] merges the two (2) lists using zip() and converts them into an iterable object. The results save to merge_lists.
  • Line [4] converts merge_lists into a Dictionary (dict()). The results save to new_dict as key:value pairs.
  • Line [5] instantiates a For loop to return the key:value pairs from new_dict.
    • Each iteration outputs the key:value pair in a column format to the terminal.

Code (snippet)

Meitnerium 277.154
Darmstadtium 282.166
Roentgenium 282.169
Copernicium 286.179
Nihonium 286.182

Method 2: Use Dictionary Comprehension

This method uses Dictionary Comprehension to merge two (2) lists into an iterable object and convert it into a Dictionary as key:value pairs. A great one-liner!

el_name = ['Meitnerium', 'Darmstadtium', 'Roentgenium', 'Copernicium', 'Nihonium', 'Flerovium', 'Moscovium', 'Livermorium', 'Tennessine', 'Oganesson']
el_atom = [277.154, 282.166, 282.169, 286.179, 286.182, 290.192, 290.196, 293.205, 294.211, 295.216]
new_dict = {el_name[i]: el_atom[i] for i in range(len(el_name))} for k, v in new_dict.items(): print ("{:<20} {:<15}".format(k, v))
  • Lines [1-2] create two (2) lists containing the Element Name (el_name) and the corresponding Atomic Mass (el_atom), respectively.
  • Line [3] merges the lists as key:value pairs and converts them into a Dictionary. The results save to new_dict.
  • Line [4] instantiates a For loop to return the key:value pairs from new_dict.
    • Each iteration outputs the key:value pair in a column format to the terminal.

Code (snippet)

Meitnerium 277.154
Darmstadtium 282.166
Roentgenium 282.169
Copernicium 286.179
Nihonium 286.182

Method 3: Use Generator Expression with zip() and dict()

This method uses a Generator Expression to merge two (2) lists
into an iterable object (zip()) and convert it into a Dictionary (dict()) as key:value pairs.

el_name = ['Meitnerium', 'Darmstadtium', 'Roentgenium', 'Copernicium', 'Nihonium', 'Flerovium', 'Moscovium', 'Livermorium', 'Tennessine', 'Oganesson']
el_atom = [277.154, 282.166, 282.169, 286.179, 286.182, 290.192, 290.196, 293.205, 294.211, 295.216]
gen_exp = dict(((k, v) for k, v in zip(el_name, el_atom))) for k, v in new_dict.items(): print ("{:<20} {:<15}".format(k, v))
  • Lines [1-2] create two (2) lists containing the Element Name (el_name) and the corresponding Atomic Mass (el_atom) respectively.
  • Line [3] uses a Generator Expression to merge the lists (zip()) and create an iterable object. The object converts into a Dictionary (dict()) and saves back to gen_exp.
  • Line [5] instantiates a For loop to return the key:value pairs from new_dict.
    • Each iteration outputs the key:value pair in a column format to the terminal.

Code (snippet)

Meitnerium 277.154
Darmstadtium 282.166
Roentgenium 282.169
Copernicium 286.179
Nihonium 286.182

Method 4: Use a Lambda

This method uses a Lambda to merge two (2) lists into an iterable object (zip()) and convert it into a Dictionary (dict()) as key:value pairs.

el_name = ['Meitnerium', 'Darmstadtium', 'Roentgenium', 'Copernicium', 'Nihonium', 'Flerovium', 'Moscovium', 'Livermorium', 'Tennessine', 'Oganesson']
el_atom = [277.154, 282.166, 282.169, 286.179, 286.182, 290.192, 290.196, 293.205, 294.211, 295.216]
new_dict = dict((lambda n, a: {name: el_atom for name, el_atom in zip(n, a)})(el_name, el_atom)) for k, v in new_dict.items(): print ("{:<20} {:<15}".format(k, v))
  • Lines [1-2] create two (2) lists containing the Element Name (el_name) and the corresponding Atomic Mass (el_atom) respectively.
  • Line [3] uses a lambda to merge the lists (zip()) and create an iterable object. The results save to a Dictionary new_dict as key:value pairs.
  • Line [4] instantiates a For loop to return the key:value pairs from new_dict.
    • Each iteration outputs the key:value pair in a column format to the terminal.

Code (snippet)

Meitnerium 277.154
Darmstadtium 282.166
Roentgenium 282.169
Copernicium 286.179
Nihonium 286.182

Summary

After reviewing the above methods, we decide that Method 2 is best suited: minimal overhead and no additional functions required.

Problem Solved! Happy Coding!


Posted on Leave a comment

How to Read an XLS File in Python?

Problem Formulation and Solution Overview

In this article, you’ll learn how to read an XML file and format the output in Python.

To make it more fun, we have the following running scenario:

Arman, a Music Appreciation student at the Royal Conservatory of Music, has been given course materials in an XML file format. Arman needs to purchase these books immediately. He’s into music, not computers. He needs you to format the output into a readable format.

Navigate to the Appendix Data section and download the XML file to follow along. Then, move this file to the current working directory.

💬 Question: How would we read in ax XML file and format the output?

We can accomplish this task by one of the following options:


Before any data manipulation can occur, two (2) new libraries will require installation.

  • The Pandas library enables access to/from a DataFrame.
  • The Beautiful Soup library enables the parsing of XML and HTML files.

To install these libraries, navigate to an IDE terminal. At the command prompt ($), execute the code below. For the terminal used in this example, the command prompt is a dollar sign ($). Your terminal prompt may be different.

$ pip install pandas

Hit the <Enter> key on the keyboard to start the installation process.

$ pip install bs4

Hit the <Enter> key on the keyboard to start the installation process.

If the installations were successful, a message displays in the terminal indicating the same.


Feel free to view the PyCharm installation guide for the required libraries.


Add the following code to the top of each code snippet. This snippet will allow the code in this article to run error-free.

import pandas as pd from bs4 import BeautifulSoup
import xml.etree.ElementTree as ET
import base64, xml.dom.minidom
from xml.dom.minidom import Node

💡 Note: The additional libraries indicated above do not require installation as they come built-in to Python.


Method 1: Use Beautiful Soup

A clean, compact way to read an XML file is to use Python’s Beautiful Soup library. A “go-to” tool for web scraping and XML data extraction.

all_books = BeautifulSoup(open('books.xml'), 'xml')
pretty_xml = all_books.prettify()
print(pretty_xml)
  • The books.xml file is read and parsed using Beautiful Soup’s XML parser. The results are saved to all_books.
  • Next, Beautiful Soup’s prettify() method is used to improve the appearance of the output.
  • Finally, the formatted output is sent to the terminal.

Output (snippet)

<?xml version="1.0"?>
<catalog>   
<book>     
<isbn>978-0393050714</isbn>
      <title>Johann Sebastian Bach</title>
      <price>$5.99</price>
   </book>
......
</catalog>

Method 2: Use XML eTree

The ElementTree library is built-in to Python and contains functions to read and parse XML and XML-like data structures. The hierarchical data format is based on a tree structure: a root representing the tree and elements representing the nodes.

all_books = ET.parse('books.xml').getroot() for b in all_books.findall('book'): print ("{:<20} {:<30} {:<30}".format(b.find('isbn').text, b.find('title').text, b.find('price').text))
  • The books.xml file is read in and parsed using the eTree parse() function. The results are saved to all_books.
  • Next, a For loop is instantiated. It traverses through each book in all_books.
    • Each book’s details are formatted into columns and output to the terminal.

Output (snippet)

978-0393050714 Johann Sebastian Bach $5.99
978-1721260522 Ludwig van Beethoven $9.99
978-0679745822 Johannes Brahms $7.99
979-8653086533 Frederic Chopin $7.99
978-1580469036 Claude Debussy $13.99

Method 3: Use minidom

Minidom is a smaller version of DOM and comes with an API similar to other programming languages. However, feedback indicates this method is slow and a memory hogger.

with open("books.xml",'r') as fp: data = fp.read() i = 0
all_books = xml.dom.minidom.parseString(data)
for book in all_books.getElementsByTagName('book'): isbn = all_books.getElementsByTagName('isbn')[i].firstChild.nodeValue title = all_books.getElementsByTagName('title')[i].firstChild.nodeValue price = all_books.getElementsByTagName('price')[i].firstChild.nodeValue print ("{:<20} {:<25} {:<20}".format(isbn, title, price)) i +=1
  • The books.xml file is opened, and a file object, fp is created.
    • The contents of this file are read in and saved to data.
  • A counter variable i is created to loop through all_books and is assigned the value 0.
  • Then data is read and parsed. The results save to all_books.
  • A For loop is instantiated. It traverses through each book in all_books.
    • Four (4) variables are used to locate and save the appropriate values.
    • They are formatted and output to the terminal in columns.
    • The counter variable is increased by one (1).

Output (snippet)

978-0393050714 Johann Sebastian Bach $5.99
978-1721260522 Ludwig van Beethoven $9.99
978-0679745822 Johannes Brahms $7.99
979-8653086533 Frederic Chopin $7.99
978-1580469036 Claude Debussy $13.99

Method 4: Use Pandas read_xml()

The Pandas library has an option to read in an XML file and convert it to a DataFrame in one easy step.

df = pd.read_xml('books.xml')
print(df)
  • The books.xml file is read in and saved to the DataFrame df.
  • The output automatically formats into columns (including a header row) and is output to the terminal.

Output (snippet)

isbn title price
0 978-0393050714 Johann Sebastian Bach $5.99
1 978-1721260522 Ludwig van Beethoven $9.99
2 978-0679745822 Johannes Brahms $7.99
3 979-8653086533 Frederic Chopin $7.99
4 978-1580469036 Claude Debussy $13.99

Appendix Data

<?xml version="1.0"?>
<catalog>
   <book>
      <isbn>978-0393050714</isbn>
      <title>Johann Sebastian Bach</title>
      <price>$5.99</price>
   </book>
   <book>
      <isbn>978-1721260522</isbn>
      <title>Ludwig van Beethoven</title>
      <price>$9.99</price>
   </book>
   <book>
      <isbn>978-0679745822</isbn>
      <title>Johannes Brahms</title>
      <price>$7.99</price>
   </book>
   <book>
      <isbn>979-8653086533</isbn>
      <title>Frederic Chopin</title>
      <price>$7.99</price>
   </book>
   <book>
      <isbn>978-1580469036</isbn>
      <title>Claude Debussy</title>
      <price>$13.99</price>
   </book>
   <book>
      <isbn>978-0520043176</isbn>
      <title>Joseph Haydn</title>
      <price>$25.99</price>
   </book>
   <book>
      <isbn>978-1981659968</isbn>
      <title>Wolfgang Amadeus Mozart</title>
      <price>$8.99</price>
   </book>
   <book>
      <isbn>978-1482379990</isbn>
      <title>Franz Schubert</title>
      <price>$26.99</price>
   </book>
   <book>
      <isbn>978-0486257488</isbn>
      <title>Robert Schumann</title>
      <price>$14.99</price>
   </book>
   <book>
      <isbn>978-0486442723</isbn>
      <title>Peter Tchaikovsky</title>
      <price>$12.95</price>
   </book>
</catalog>

Summary

After reviewing the above methods in conjunction with Arman’s requirements, we decide that Method 4 best meets his needs.

Problem Solved! Happy Coding!


Posted on Leave a comment

Front-End Web Developer — Income and Opportunity

Before we learn about the money, let’s get this question out of the way:

What Is a Front-end Web Developer?

A web developer is a programmer who specializes in the development of websites or applications viewed on web browsers, mobile devices, and large desktop screens that are transported over private or public networks such as the Internet.

A front-end web developer focuses on the graphical user interface (GUI) of the website using HTML, CSS, and JavaScript with the goal of setting up the whole technology stack to enable users to view and interact with the website.

This video nicely explains some of the most important technologies and skills you need as a front-end web developer:

Who Do Front-end Web Developers Work For?

Front-end web developers either work independently as freelancers or as employees for companies, government organizations, or non-profits.

Lately, many front-end web developers have started to work for decentralized autonomous organizations (DAOs) in the crypto ecosystem due to their expertise in native web technologies and philosophies.

In fact, you don’t need to have significant crypto skills as a front-end web3 developer because almost all decentralized projects (including Ethereum) only focus on decentralized back-end development whereas the front-ends run on a centralized infrastructure!

That’s why decentralized web3 apps still require front-end skills such as HTML, CSS, and JavaScript.

Now that you know about what it is, let’s have a look at what it earns next!

Annual Income

How much does a Web Developer make per year?

The average annual income of a Front-end Web Developer in the United States is between $61,194 and $119,224 with an average income of $89,683 and a median income of $90,499 per year according to our meta-study of 8 aggregated data sources such as Glassdoor and Indeed.

The following graphic shows the individual data sources, as well as the average and median income level of a web developer in the US:

Average Income of a Front-End Web Developer in the US by Source
Figure: Average Income of a Front-End Web Developer in the US by Source. [1]

Interestingly, there is no statistically significant difference in both the median and the average income of a front-end web developer versus a general web developer.

Front-end web developers make on average $89,683 (median: $90,499) per year whereas web developers make $88,054 (median: $90,000) per year.

This is not surprising because all front-end web developers are web developers and most web developers are also front-end web developers. 🤯

Here’s the income of a general web developer for comparison:

Average and Median Income of a Web Developer in the US by Source
Figure: Average Income of a Web Developer in the US by Source.

If you need the raw data for the income of a front-end web developer in the US, this is it:

Source Average Income
Glassdoor.com $73,157
ZipRecruiter.com $79,725
Kinsta.com $86,013
Indeed.com $102,435
Salary.com $119,224
Comparably.com $61,194
Zippia.com $90,499
Builtin.com $105,224
Table: Average Income of a Front-end Web Developer in the US by Source.

Let’s have a look at the hourly rate of Front-end Web Developers next!

Hourly Rate

Front-end Web Developers are well-paid on freelancing platforms such as Upwork or Fiverr.

If you decide to go the route as a freelance Front-end Web Developer, you can expect to make between $30 and $70 per hour on Upwork (source). Assuming an annual workload of 2000 hours, you can expect to make between $60,000 and $140,000 per year.

⚡ Note: Do you want to create your own thriving coding business online? Feel free to check out our freelance developer course — the world’s #1 best-selling freelance developer course that specifically shows you how to succeed on Upwork and Fiverr!

Industry Demand

But is there enough demand? Let’s have a look at Google trends to find out how interest evolves over time (source):

This graphic shows that the supply of people interested in learning web development has remained steady since 2013.

However, if you look at the demand for web developers—it has only increased over the last two decades!

As in any market, if there is high demand for a resource with low supply, prices of this resource tend to increase. That’s why it can be a super lucrative decision to become a freelance frontend web developer in the 2020s and 2030s and beyond.

Learning Path, Skills, and Education Requirements

Do you want to become a Front-end Web Developer?

Here’s a step-by-step learning path I’d propose to get started with the most crucial front-end web developments tools:

You can find many additional computer science courses on the Finxter Computer Science Academy (flatrate model).

But don’t wait too long to acquire practical experience!

Even if you have few skills, it’s best to get started as a freelance developer and learn as you work on real projects for clients — earning income as you learn and gaining motivation through real-world feedback.

🚀 Tip: An excellent start to turbo-charge your freelancing career (earning more in less time) is our Finxter Freelancer Course. The goal of the course is to pay for itself!

You can find more job descriptions for coders, programmers, and computer scientists in our detailed overview guide:

Web Developer Comparisons

web developer vs web designer

A web developer creates the core functionality of a website whereas a web designer is a graphic artist responsible for designing the layout, usability, and visual appearance of a website. A successful web designer often has outstanding skills in creativity, graphic design, and technical understanding.

  • The average income of a web developer in the US is $88,054 per year.
  • The average income of a web designer in the US is $60,000 per year.

web developer vs front-end developer

A web developer creates the core functionality of a website whereas a front-end developer is concerned with the functionality of the user interface on the browser. Compared to a web designer, a front-end developer is more concerned with the functionality and user experience (e.g., implementing buttons and user inputs functionality rather than designing them).

  • The average income of a web developer in the US is $88,054 per year.
  • The average income of a front-end developer in the US is $89,683 per year.

web developer vs software developer (programmer, software engineer)

A web developer specializes in web applications such as websites, e-commerce, and mobile apps, whereas a software developer (engineer) specializes in creating software for the underlying operating system, network, or platform.

All web developers are software developers but not all software developers are web developers!

  • The average income of a web developer in the US is $88,054 per year.
  • The average income of a software developer in the US is $110,140 per year.

web developer vs ux designer

Web developers focus more on the technicalities of running and scaling a web application to Internet-scale whereas UX designers focus on the engineering of the user experience which often involves a deep understanding of the users’ needs and psychological motivations when using the website or web app.

  • The average income of a web developer in the US is $88,054 per year.
  • The average income of a UX designer in the US is $90,000 per year.

web developer vs data analyst

Web developers create websites and web apps for companies whereas data scientists (data analysts) draw insights from structured and unstructured data using a multitude of tools such as machine learning, visualization, and statistical analysis.

  • The average income of a web developer in the US is $88,054 per year.
  • The average income of a data scientist in the US is $122,700 per year.

The following statistic shows the self-reported income from 9,649 US-based professional developers (source).

💡 The average annual income of professional developers in the US is between $70,000 and $177,500 for various programming languages.

Question: What is your current total compensation (salary, bonuses, and perks, before taxes and deductions)? Please enter a whole number in the box below, without any punctuation. If you are paid hourly, please estimate an equivalent weekly, monthly, or yearly salary. (source)

The following statistic compares the self-reported income from 46,693 professional programmers as conducted by StackOverflow.

💡 The average annual income of professional developers worldwide (US and non-US) is between $33,000 and $95,000 for various programming languages.

Here’s a screenshot of a more detailed overview of each programming language considered in the report:

Here’s what different database professionals earn:

Here’s an overview of different cloud solutions experts:

Here’s what professionals in web frameworks earn:

There are many other interesting frameworks—that pay well!

Look at those tools:

Okay, but what do you need to do to get there? What are the skill requirements and qualifications to make you become a professional developer in the area you desire?

Let’s find out next!

General Qualifications of Professionals

StackOverflow performs an annual survey asking professionals, coders, developers, researchers, and engineers various questions about their background and job satisfaction on their website.

Interestingly, when aggregating the data of the developers’ educational background, a good three quarters have an academic background.

Here’s the question asked by StackOverflow (source):

Which of the following best describes the highest level of formal education that you’ve completed?

However, if you don’t have a formal degree, don’t fear! Many of the respondents with degrees don’t have a degree in their field—so it may not be of much value for their coding careers anyways.

Also, about one out of four don’t have a formal degree and still succeeds in their field! You certainly don’t need a degree if you’re committed to your own success!

Freelancing vs Employment Status

The percentage of freelance developers increases steadily. The fraction of freelance developers has already reached 11.21%!

This indicates that more and more work will be done in a more flexible work environment—and fewer and fewer companies and clients want to hire inflexible talent.

Here are the stats from the StackOverflow developer survey (source):

Do you want to become a professional freelance developer and earn some money on the side or as your primary source of income?

Resource: Check out our freelance developer course—it’s the best freelance developer course in the world with the highest student success rate in the industry!

Other Programming Languages Used by Professional Developers

The StackOverflow developer survey collected 58000 responses about the following question (source):

Which programming, scripting, and markup languages have you done extensive development work in over the past year, and which do you want to work in over the next year?

These are the languages you want to focus on when starting out as a coder:

And don’t worry—if you feel stuck or struggle with a nasty bug. We all go through it. Here’s what SO survey respondents and professional developers do when they’re stuck:

What do you do when you get stuck on a problem? Select all that apply. (source)

To get started with some of the fundamentals and industry concepts, feel free to check out these articles:

Where to Go From Here?

Enough theory. Let’s get some practice!

Coders get paid six figures and more because they can solve problems more effectively using machine intelligence and automation.

To become more successful in coding, solve more real problems for real people. That’s how you polish the skills you really need in practice. After all, what’s the use of learning theory that nobody ever needs?

You build high-value coding skills by working on practical coding projects!

Do you want to stop learning with toy projects and focus on practical code projects that earn you money and solve real problems for people?

🚀 If your answer is YES!, consider becoming a Python freelance developer! It’s the best way of approaching the task of improving your Python skills—even if you are a complete beginner.

If you just want to learn about the freelancing opportunity, feel free to watch my free webinar “How to Build Your High-Income Skill Python” and learn how I grew my coding business online and how you can, too—from the comfort of your own home.

Join the free webinar now!

Resources

[1] We used the following code to create the income graphic:

import matplotlib.pyplot as plt
import numpy as np
import math data = [73157, 79725, 86013, 102435, 119224, 61194, 90499, 105224] labels = ['Glassdoor.com', 'ZipRecruiter.com', 'Kinsta.com', 'Indeed.com', 'Salary.com', 'Comparably.com', 'Zippia.com', 'Builtin.com',] median = sorted(data)[math.ceil(len(data)/2)]
average = sum(data)/len(data)
print(median, average)
n = len(data) plt.plot(range(n), [median] * n, color='black', label='Median: $' + str(int(median)))
plt.plot(range(n), [average] * n, '--', color='red', label='Average: $' + str(int(average)))
plt.bar(range(len(data)), data)
plt.xticks(range(len(data)), labels, rotation='vertical', position = (0,0.45), color='white', weight='bold')
plt.ylabel('Average Income ($)')
plt.title('Front Web Developer Annual Income - by Finxter')
plt.legend()
plt.show() 

You can check out our article on Matplotlib to better understand the code.

Creating Frontends in the Crypto Space

In the following video, Finxter Mikio shows how to create a front-end of a crypto-related website using Python Brownie:

If you’re interested in creating crypto front-end projects, also check out our course at the Finxter Computer Science Academy:

Posted on Leave a comment

Web Developer — Income and Opportunity

Before we learn about the money, let’s get this question out of the way:

What Is a Web Developer?

A web developer is a programmer who specializes in the development of websites or applications viewed on web browsers, mobile devices, and large desktop screens that are transported over private or public networks such as the Internet.

This video nicely explains some of the most recent trends in web developments including Web3 and Blockchain:

Who Do Web Developers Work For?

Web developers either work independently as freelancers or as employees for companies, government organizations, or non-profits.

Lately, many web developers have started to work for decentralized autonomous organizations (DAOs) in the crypto ecosystem due to their expertise in native web technologies and philosophies.

Now that you know about what it is, let’s have a look at what it earns next!

Annual Income

How much does a Web Developer make per year?

The average annual income of a Web Developer in the United States is between $68,732 and $110,438 with an average income of $88,054 and a median income of $90,000 per year according to our meta-study of 11 aggregated data sources such as Glassdoor and Indeed.

The following graphic shows the individual data sources, as well as the average and median income level of a web developer in the US:

Average and Median Income of a Web Developer in the US by Source
Figure: Average Income of a Web Developer in the US by Source. [1]

If you need the raw data, this is it:

Source Average Income
Glassdoor.com $110,438
USNews.com $77,200
Kinsta.com $105,590
Indeed.com $68,732
Talent.com $90,000
CareerExplorer.com $69,038
Salary.com $96,495
SalaryExplorer.com $82,500
Comparably.com $70,554
SalaryExpert.com $92,833
Builtin.com $105,224
Table: Average Income of a Web Developer in the US by Source.

Let’s have a look at the hourly rate of Web Developers next!

Hourly Rate

Web Developers are well-paid on freelancing platforms such as Upwork or Fiverr.

If you decide to go the route as a freelance Web Developer, you can expect to make between $30 and $50 per hour on Upwork (source). Assuming an annual workload of 2000 hours, you can expect to make between $60,000 and $100,000 per year.

⚡ Note: Do you want to create your own thriving coding business online? Feel free to check out our freelance developer course — the world’s #1 best-selling freelance developer course that specifically shows you how to succeed on Upwork and Fiverr!

Industry Demand

But is there enough demand? Let’s have a look at Google trends to find out how interest evolves over time (source):

This graphic shows that the supply of people interested in learning web development has declined from its peak in 2005-2007 and has remained steady since 2013.

However, if you look at the demand for web developers—it has only increased over the last two decades!

As in any market, if there is high demand for a resource with low supply, prices of this resource tend to increase. That’s why it can be a super lucrative decision to become a freelance web developer in the 2020s and 2030s and beyond.

Learning Path, Skills, and Education Requirements

Do you want to become a Web Developer? Here’s a step-by-step learning path I’d propose to get started with Web :

You can find many additional computer science courses on the Finxter Computer Science Academy (flatrate model).

But don’t wait too long to acquire practical experience!

Even if you have little skills, it’s best to get started as a freelance developer and learn as you work on real projects for clients — earning income as you learn and gaining motivation through real-world feedback.

🚀 Tip: An excellent start to turbo-charge your freelancing career (earning more in less time) is our Finxter Freelancer Course. The goal of the course is to pay for itself!

You can find more job descriptions for coders, programmers, and computer scientists in our detailed overview guide:

Web Developer Comparisons

web developer vs web designer

A web developer creates the core functionality of a website whereas a web designer is a graphic artist responsible for designing the layout, usability, and visual appearance of a website. A successful web designer often has outstanding skills in creativity, graphic design, and technical understanding.

  • The average income of a web developer in the US is $88,054 per year.
  • The average income of a web designer in the US is $60,000 per year.

web developer vs front-end developer

A web developer creates the core functionality of a website whereas a front-end developer is concerned with the functionality of the user interface on the browser. Compared to a web designer, a front-end developer is more concerned with the functionality and user experience (e.g., implementing buttons and user inputs functionality rather than designing them).

  • The average income of a web developer in the US is $88,054 per year.
  • The average income of a front-end developer in the US is $105,224 per year.

web developer vs software developer (programmer, software engineer)

A web developer specializes in web applications such as websites, e-commerce, and mobile apps, whereas a software developer (engineer) specializes in creating software for the underlying operating system, network, or platform.

All web developers are software developers but not all software developers are web developers!

  • The average income of a web developer in the US is $88,054 per year.
  • The average income of a software developer in the US is $110,140 per year.

web developer vs ux designer

Web developers focus more on the technicalities of running and scaling a web application to Internet-scale whereas UX designers focus on the engineering of the user experience which often involves a deep understanding of the users’ needs and psychological motivations when using the website or web app.

  • The average income of a web developer in the US is $88,054 per year.
  • The average income of a UX designer in the US is $90,000 per year.

web developer vs data analyst

Web developers create websites and web apps for companies whereas data scientists (data analysts) draw insights from structured and unstructured data using a multitude of tools such as machine learning, visualization, and statistical analysis.

  • The average income of a web developer in the US is $88,054 per year.
  • The average income of a data scientist in the US is $122,700 per year.

The following statistic shows the self-reported income from 9,649 US-based professional developers (source).

💡 The average annual income of professional developers in the US is between $70,000 and $177,500 for various programming languages.

Question: What is your current total compensation (salary, bonuses, and perks, before taxes and deductions)? Please enter a whole number in the box below, without any punctuation. If you are paid hourly, please estimate an equivalent weekly, monthly, or yearly salary. (source)

The following statistic compares the self-reported income from 46,693 professional programmers as conducted by StackOverflow.

💡 The average annual income of professional developers worldwide (US and non-US) is between $33,000 and $95,000 for various programming languages.

Here’s a screenshot of a more detailed overview of each programming language considered in the report:

Here’s what different database professionals earn:

Here’s an overview of different cloud solutions experts:

Here’s what professionals in web frameworks earn:

There are many other interesting frameworks—that pay well!

Look at those tools:

Okay, but what do you need to do to get there? What are the skill requirements and qualifications to make you become a professional developer in the area you desire?

Let’s find out next!

General Qualifications of Professionals

StackOverflow performs an annual survey asking professionals, coders, developers, researchers, and engineers various questions about their background and job satisfaction on their website.

Interestingly, when aggregating the data of the developers’ educational background, a good three quarters have an academic background.

Here’s the question asked by StackOverflow (source):

Which of the following best describes the highest level of formal education that you’ve completed?

However, if you don’t have a formal degree, don’t fear! Many of the respondents with degrees don’t have a degree in their field—so it may not be of much value for their coding careers anyways.

Also, about one out of four don’t have a formal degree and still succeeds in their field! You certainly don’t need a degree if you’re committed to your own success!

Freelancing vs Employment Status

The percentage of freelance developers increases steadily. The fraction of freelance developers has already reached 11.21%!

This indicates that more and more work will be done in a more flexible work environment—and fewer and fewer companies and clients want to hire inflexible talent.

Here are the stats from the StackOverflow developer survey (source):

Do you want to become a professional freelance developer and earn some money on the side or as your primary source of income?

Resource: Check out our freelance developer course—it’s the best freelance developer course in the world with the highest student success rate in the industry!

Other Programming Languages Used by Professional Developers

The StackOverflow developer survey collected 58000 responses about the following question (source):

Which programming, scripting, and markup languages have you done extensive development work in over the past year, and which do you want to work in over the next year?

These are the languages you want to focus on when starting out as a coder:

And don’t worry—if you feel stuck or struggle with a nasty bug. We all go through it. Here’s what SO survey respondents and professional developers do when they’re stuck:

What do you do when you get stuck on a problem? Select all that apply. (source)

To get started with some of the fundamentals and industry concepts, feel free to check out these articles:

Where to Go From Here?

Enough theory. Let’s get some practice!

Coders get paid six figures and more because they can solve problems more effectively using machine intelligence and automation.

To become more successful in coding, solve more real problems for real people. That’s how you polish the skills you really need in practice. After all, what’s the use of learning theory that nobody ever needs?

You build high-value coding skills by working on practical coding projects!

Do you want to stop learning with toy projects and focus on practical code projects that earn you money and solve real problems for people?

🚀 If your answer is YES!, consider becoming a Python freelance developer! It’s the best way of approaching the task of improving your Python skills—even if you are a complete beginner.

If you just want to learn about the freelancing opportunity, feel free to watch my free webinar “How to Build Your High-Income Skill Python” and learn how I grew my coding business online and how you can, too—from the comfort of your own home.

Join the free webinar now!

Resources

[1] We used the following code to create the income graphic:

import matplotlib.pyplot as plt
import numpy as np data = [110438, 77200, 105590, 68732, 90000, 69038, 96495, 82500, 70554, 92833, 105224] labels = ['Glassdoor.com', 'USNews.com', 'Kinsta.com', 'Indeed.com', 'Talent.com', 'CareerExplorer.com', 'Salary.com', 'SalaryExplorer.com', 'Comparably.com', 'SalaryExpert.com', 'Builtin.com',] median = np.median(data)
average = np.average(data)
print(median, average)
n = len(data) plt.plot(range(n), [median] * n, color='black', label='Median: $' + str(int(median)))
plt.plot(range(n), [average] * n, '--', color='red', label='Average: $' + str(int(average)))
plt.bar(range(len(data)), data)
plt.xticks(range(len(data)), labels, rotation='vertical', position = (0,0.6), color='white', weight='bold')
plt.ylabel('Average Income ($)')
plt.title('Web Developer Annual Income - by Finxter')
plt.legend()
plt.show() 

You can check out our article on Matplotlib to better understand the code.

Posted on Leave a comment

Network Engineer — Income and Opportunity

Before we learn about the money, let’s get this question out of the way:

What Is a Computer Network ?

Let’s have a look at the definition from the lecture notes of University of South Florida (highlights and changes by me):


A network consists of two or more connected computers that communicate with each other (e.g., chat apps), share resources (e.g., printing devices), exchange data (e.g., files or digital assets such as Bitcoin).

There are many ways for computers to speak with each other, e.g., via cables, telephone lines, radio waves, satellites, or infrared light beams.


What Is a Network Engineer?

Definition Network Engineer: A network engineer plans, supervises, debugs, installs, and implements computer networks. The required skill set of a network engineer includes a profound understanding of basic networking protocols such as TCP/IP and UDP, as well as basic hardware configurations such as Ethernet switches and routers.

Network Engineer Job Description

The job description of a network engineer is to configure and install network hardware devices such as switches and routers, network software applications such as firewalls and load balancers, and set up security and network interfaces and protocols such as VPN, TCP/IP, and Wifi. A network engineer also maintains and optimizes existing computer networks or telecommunication networks and keeps them secure and updated.

Now that you know about what it is, let’s have a look at what it earns next!

Annual Income

How much does a Network Engineer make per year?

The average annual income of a Network Engineer in the United States is between $68,000 and $104,000 with a median income of $87,000 per year according to multiple sources including Indeed, Glassdoor, and Talent.com.

Figure: Average income of a network engineer in the US by source. [1]

Here’s the data used to generate this graphic in table form:

Source Network Engineer Income
Indeed.com $91,753
Glassdoor.com $87,248
Nexgent.com $85,841
Salary.com $92,085
SalaryExplorer.com $83,200
Comparably.com $68,910
Talent.com $104,150
Table: Average income of a network engineer in the US by source.

Let’s have a look at the hourly rate of Network Engineers next!

Hourly Rate

Network Engineers are well-paid on freelancing platforms such as Upwork or Fiverr.

If you decide to go the route as a freelance Network Engineer, you can expect to make between $49 and $145 per hour on Upwork (source). Assuming an annual workload of 2000 hours, you can expect to make between $98,000 and $290,000 per year.

⚡ Note: Do you want to create your own thriving coding business online? Feel free to check out our freelance developer course — the world’s #1 best-selling freelance developer course that specifically shows you how to succeed on Upwork and Fiverr!

Industry Demand

But is there enough demand? Let’s have a look at Google trends to find out how interest evolves over time (source):

While the interest of network engineers (supply) to obtain this role remains relatively stable, the demand for network engineers increases:

source

Increasing demand and slightly reducing supply of great network engineers leads to the high hourly rates of Network engineers.

Learning Path, Skills, and Education Requirements

Do you want to become a Network Engineer? Here’s a step-by-step learning path I’d propose to get started with Network :

You can find many additional computer science courses on the Finxter Computer Science Academy (flatrate model).

But don’t wait too long to acquire practical experience!

Even if you have few skills, it’s best to get started as a freelance developer and learn as you work on real projects for clients — earning income as you learn and gaining motivation through real-world feedback.

🚀 Tip: An excellent start to turbo-charge your freelancing career (earning more in less time) is our Finxter Freelancer Course. The goal of the course is to pay for itself!

You can find more job descriptions for coders, programmers, and computer scientists in our detailed overview guide:

The following statistic shows the self-reported income from 9,649 US-based professional developers (source).

💡 The average annual income of professional developers in the US is between $70,000 and $177,500 for various programming languages.

Question: What is your current total compensation (salary, bonuses, and perks, before taxes and deductions)? Please enter a whole number in the box below, without any punctuation. If you are paid hourly, please estimate an equivalent weekly, monthly, or yearly salary. (source)

The following statistic compares the self-reported income from 46,693 professional programmers as conducted by StackOverflow.

💡 The average annual income of professional developers worldwide (US and non-US) is between $33,000 and $95,000 for various programming languages.

Here’s a screenshot of a more detailed overview of each programming language considered in the report:

Here’s what different database professionals earn:

Here’s an overview of different cloud solutions experts:

Here’s what professionals in web frameworks earn:

There are many other interesting frameworks—that pay well!

Look at those tools:

Okay, but what do you need to do to get there? What are the skill requirements and qualifications to make you become a professional developer in the area you desire?

Let’s find out next!

General Qualifications of Professionals

StackOverflow performs an annual survey asking professionals, coders, developers, researchers, and engineers various questions about their background and job satisfaction on their website.

Interestingly, when aggregating the data of the developers’ educational background, a good three quarters have an academic background.

Here’s the question asked by StackOverflow (source):

Which of the following best describes the highest level of formal education that you’ve completed?

However, if you don’t have a formal degree, don’t fear! Many of the respondents with degrees don’t have a degree in their field—so it may not be of much value for their coding careers anyways.

Also, about one out of four don’t have a formal degree and still succeeds in their field! You certainly don’t need a degree if you’re committed to your own success!

Freelancing vs Employment Status

The percentage of freelance developers increases steadily. The fraction of freelance developers has already reached 11.21%!

This indicates that more and more work will be done in a more flexible work environment—and fewer and fewer companies and clients want to hire inflexible talent.

Here are the stats from the StackOverflow developer survey (source):

Do you want to become a professional freelance developer and earn some money on the side or as your primary source of income?

Resource: Check out our freelance developer course—it’s the best freelance developer course in the world with the highest student success rate in the industry!

Other Programming Languages Used by Professional Developers

The StackOverflow developer survey collected 58000 responses about the following question (source):

Which programming, scripting, and markup languages have you done extensive development work in over the past year, and which do you want to work in over the next year?

These are the languages you want to focus on when starting out as a coder:

And don’t worry—if you feel stuck or struggle with a nasty bug. We all go through it. Here’s what SO survey respondents and professional developers do when they’re stuck:

What do you do when you get stuck on a problem? Select all that apply. (source)

To get started with some of the fundamentals and industry concepts, feel free to check out these articles:

Where to Go From Here?

Enough theory. Let’s get some practice!

Coders get paid six figures and more because they can solve problems more effectively using machine intelligence and automation.

To become more successful in coding, solve more real problems for real people. That’s how you polish the skills you really need in practice. After all, what’s the use of learning theory that nobody ever needs?

You build high-value coding skills by working on practical coding projects!

Do you want to stop learning with toy projects and focus on practical code projects that earn you money and solve real problems for people?

🚀 If your answer is YES!, consider becoming a Python freelance developer! It’s the best way of approaching the task of improving your Python skills—even if you are a complete beginner.

If you just want to learn about the freelancing opportunity, feel free to watch my free webinar “How to Build Your High-Income Skill Python” and learn how I grew my coding business online and how you can, too—from the comfort of your own home.

Join the free webinar now!

Reference

[1] Code used to generate this graphic:

import matplotlib.pyplot as plt data = [91753, 87248, 85841, 92085, 83200, 68910, 104150] labels = ['Indeed.com', 'Glassdoor.com', 'Nexgent.edu', 'Salary.com', 'SalaryExplorer.com', 'Comparably.com', 'Talent.com'] plt.bar(range(len(data)), data)
plt.xticks(range(len(data)), labels, rotation='vertical', position = (0,0.6), color='white', weight='bold')
plt.ylabel('Average Income ($)')
plt.title('Network Engineer Annual Income - by Finxter')
plt.legend()
plt.show() 
Posted on Leave a comment

DevOps Specialist — Income and Opportunity

Before we learn about the money, let’s get this question out of the way:

What Is DevOps ?

Let’s have a look at the definition from TechTarget:

A DevOps engineer/specialist works with engineers, software developers, system operators (SysOps) and administrators (SysAdmins), and other production IT professionals to release and deploy code in the real world.

Now that you know about what it is, let’s have a look at what it earns next!

Annual Income

How much does a DevOps Specialist make per year?

The average annual income of a DevOps Specialist in the United States is between $92,000 and $143,000 with a median of $120,000 per year according to our collection of data sources such as Glassdoor, ZipRecruiter, and Salary.com.

Here’s the raw data about DevOps engineers income levels from various sources:

Source Annual Income (US)
Builtin.com $126,301
Glassdoor.com $143,158
PayScale.com $98,103
Salary.com $120,871
Kinsta.com $103,253
ZipRecruiter.com $134,079
Comparably.com $92,777
Table: Annual income of a DevOps specialist in the US.

Let’s have a look at the hourly rate of DevOps Specialists next!

Hourly Rate

DevOps Specialists are well-paid on freelancing platforms such as Upwork or Fiverr.

If you decide to go the route as a freelance DevOps Specialist, you can expect to make between $20 and $80 per hour on Upwork (source). Assuming an annual workload of 2000 hours, you can expect to make between $40,000 and $160,000 per year.

⚡ Note: Do you want to create your own thriving coding business online? Feel free to check out our freelance developer course — the world’s #1 best-selling freelance developer course that specifically shows you how to succeed on Upwork and Fiverr!

Industry Demand

But is there enough demand? Let’s have a look at Google trends to find out how interest evolves over time (source):

DevOps Developer Skills

As a DevOps developer, you should have the following skills — you don’t need to have all of them but the more you have the better:

  • Basic coding (e.g., Python, Java, C++)
  • Basics of scripting and automation (e.g., Linux terminal, Powershell, SSH)
  • Operating systems (e.g., Windows, Linux, scheduling)
  • Distributed systems (e.g., client/server architecture, P2P)
  • Cloud (e.g., Amazon Web Services (AWS) and Microsoft Azure)
  • Testing software (e.g., PyTest)
  • Communication and collaboration with peers
  • Team building, motivation, and management (e.g., Agile software development, Scrum)
  • Soft skills
  • DevOps tools (e.g., Chef)
  • Security

There are many more but don’t let this hold you back — you’ll develop these skills as you go along!

Learning Path, Skills, and Education Requirements

Do you want to become a DevOps Specialist? Here’s a step-by-step learning path I’d propose to get started with DevOps :

You can find many additional computer science courses on the Finxter Computer Science Academy (flatrate model).

All skills presented previously must be learned but you don’t need to formally master all of them before diving in and gaining practical experience. You’ll learn as you earn over the years!

Even if you have little skills, it’s best to get started as a freelance developer and learn as you work on real projects for clients — earning income as you learn and gaining motivation through real-world feedback.

🚀 Tip: An excellent start to turbo-charge your freelancing career (earning more in less time) is our Finxter Freelancer Course. The goal of the course is to pay for itself!

You can find more job descriptions for coders, programmers, and computer scientists in our detailed overview guide:

The following statistic shows the self-reported income from 9,649 US-based professional developers (source).

💡 The average annual income of professional developers in the US is between $70,000 and $177,500 for various programming languages.

Question: What is your current total compensation (salary, bonuses, and perks, before taxes and deductions)? Please enter a whole number in the box below, without any punctuation. If you are paid hourly, please estimate an equivalent weekly, monthly, or yearly salary. (source)

The following statistic compares the self-reported income from 46,693 professional programmers as conducted by StackOverflow.

💡 The average annual income of professional developers worldwide (US and non-US) is between $33,000 and $95,000 for various programming languages.

Here’s a screenshot of a more detailed overview of each programming language considered in the report:

Here’s what different database professionals earn:

Here’s an overview of different cloud solutions experts:

Here’s what professionals in web frameworks earn:

There are many other interesting frameworks—that pay well!

Look at those tools:

Okay, but what do you need to do to get there? What are the skill requirements and qualifications to make you become a professional developer in the area you desire?

Let’s find out next!

General Qualifications of Professionals

StackOverflow performs an annual survey asking professionals, coders, developers, researchers, and engineers various questions about their background and job satisfaction on their website.

Interestingly, when aggregating the data of the developers’ educational background, a good three quarters have an academic background.

Here’s the question asked by StackOverflow (source):

Which of the following best describes the highest level of formal education that you’ve completed?

However, if you don’t have a formal degree, don’t fear! Many of the respondents with degrees don’t have a degree in their field—so it may not be of much value for their coding careers anyways.

Also, about one out of four don’t have a formal degree and still succeeds in their field! You certainly don’t need a degree if you’re committed to your own success!

Freelancing vs Employment Status

The percentage of freelance developers increases steadily. The fraction of freelance developers has already reached 11.21%!

This indicates that more and more work will be done in a more flexible work environment—and fewer and fewer companies and clients want to hire inflexible talent.

Here are the stats from the StackOverflow developer survey (source):

Do you want to become a professional freelance developer and earn some money on the side or as your primary source of income?

Resource: Check out our freelance developer course—it’s the best freelance developer course in the world with the highest student success rate in the industry!

Other Programming Languages Used by Professional Developers

The StackOverflow developer survey collected 58000 responses about the following question (source):

Which programming, scripting, and markup languages have you done extensive development work in over the past year, and which do you want to work in over the next year?

These are the languages you want to focus on when starting out as a coder:

And don’t worry—if you feel stuck or struggle with a nasty bug. We all go through it. Here’s what SO survey respondents and professional developers do when they’re stuck:

What do you do when you get stuck on a problem? Select all that apply. (source)

To get started with some of the fundamentals and industry concepts, feel free to check out these articles:

Where to Go From Here?

Enough theory. Let’s get some practice!

Coders get paid six figures and more because they can solve problems more effectively using machine intelligence and automation.

To become more successful in coding, solve more real problems for real people. That’s how you polish the skills you really need in practice. After all, what’s the use of learning theory that nobody ever needs?

You build high-value coding skills by working on practical coding projects!

Do you want to stop learning with toy projects and focus on practical code projects that earn you money and solve real problems for people?

🚀 If your answer is YES!, consider becoming a Python freelance developer! It’s the best way of approaching the task of improving your Python skills—even if you are a complete beginner.

If you just want to learn about the freelancing opportunity, feel free to watch my free webinar “How to Build Your High-Income Skill Python” and learn how I grew my coding business online and how you can, too—from the comfort of your own home.

Join the free webinar now!

Posted on Leave a comment

Site Reliability Engineer (SRE) — Income and Opportunity

Before we learn about the money, let’s get this question out of the way:

What Is Site Reliability Engineering?

Let’s have a look at the definition from the official Site Reliability website:

Site reliability engineering applies software engineering principles to infrastructure and operations to create scalable and highly reliable software systems. It is closely related to DevOps in that it helps delivering value to customers focusing more on operations rather than creation of the software system.

I found this video does a great job explaining Site Reliability Engineering (SRE):

Now that you know about what it is, let’s have a look at what it earns next!

Annual Income

How much does a Site Reliability Engineer make per year?

The average annual income of a Site Reliability Engineer in the United States is between $124,000 and $150,000 per year according to multiple sources such as Indeed, PayScale, and Ziprecruiter.

The following table shows how much SREs make per year in the US:

Source Income
Builtin.com $124,767
Indeed.com $132,841
Glassdoor.com $127,718
Payscale.com $118,552
Ziprecruiter.com $130,021
Hired.com $150,000
Comparably.com $125,000
Table: Income of Site Reliability Engineers in the US by source.

Let’s have a look at the hourly rate of Site Reliability Engineers next!

Hourly Rate

Site Reliability Engineers are well-paid on freelancing platforms such as Upwork or Fiverr.

If you decide to go the route as a freelance Site Reliability Engineer, you can expect to make between $35 and $150 per hour on Upwork (source). Assuming an annual workload of 2000 hours, you can expect to make between $70,000 and $300,000 per year.

⚡ Note: Do you want to create your own thriving coding business online? Feel free to check out our freelance developer course — the world’s #1 best-selling freelance developer course that specifically shows you how to succeed on Upwork and Fiverr!

Industry Demand

But is there enough demand? Let’s have a look at Google trends to find out how interest evolves over time (source):

SRE definitely is an interesting and growing niche! In the last 18 years between 2004 and 2022, the interest in SRE grew by factor 10x, i.e., by 1000% cumulatively.

Learning Path, Skills, and Education Requirements

Do you want to become a Site Reliability Engineer? Here’s a step-by-step learning path I’d propose to get started with Site Reliability :

Here’s an interesting first video to learn SRE:

You can find many additional computer science courses on the Finxter Computer Science Academy (flatrate model).

But don’t wait too long to acquire practical experience!

Even if you have little skills, it’s best to get started as a freelance developer and learn as you work on real projects for clients — earning income as you learn and gaining motivation through real-world feedback.

🚀 Tip: An excellent start to turbo-charge your freelancing career (earning more in less time) is our Finxter Freelancer Course. The goal of the course is to pay for itself!

You can find more job descriptions for coders, programmers, and computer scientists in our detailed overview guide:

The following statistic shows the self-reported income from 9,649 US-based professional developers (source).

💡 The average annual income of professional developers in the US is between $70,000 and $177,500 for various programming languages.

Question: What is your current total compensation (salary, bonuses, and perks, before taxes and deductions)? Please enter a whole number in the box below, without any punctuation. If you are paid hourly, please estimate an equivalent weekly, monthly, or yearly salary. (source)

The following statistic compares the self-reported income from 46,693 professional programmers as conducted by StackOverflow.

💡 The average annual income of professional developers worldwide (US and non-US) is between $33,000 and $95,000 for various programming languages.

Here’s a screenshot of a more detailed overview of each programming language considered in the report:

Here’s what different database professionals earn:

Here’s an overview of different cloud solutions experts:

Here’s what professionals in web frameworks earn:

There are many other interesting frameworks—that pay well!

Look at those tools:

Okay, but what do you need to do to get there? What are the skill requirements and qualifications to make you become a professional developer in the area you desire?

Let’s find out next!

General Qualifications of Professionals

StackOverflow performs an annual survey asking professionals, coders, developers, researchers, and engineers various questions about their background and job satisfaction on their website.

Interestingly, when aggregating the data of the developers’ educational background, a good three quarters have an academic background.

Here’s the question asked by StackOverflow (source):

Which of the following best describes the highest level of formal education that you’ve completed?

However, if you don’t have a formal degree, don’t fear! Many of the respondents with degrees don’t have a degree in their field—so it may not be of much value for their coding careers anyways.

Also, about one out of four don’t have a formal degree and still succeeds in their field! You certainly don’t need a degree if you’re committed to your own success!

Freelancing vs Employment Status

The percentage of freelance developers increases steadily. The fraction of freelance developers has already reached 11.21%!

This indicates that more and more work will be done in a more flexible work environment—and fewer and fewer companies and clients want to hire inflexible talent.

Here are the stats from the StackOverflow developer survey (source):

Do you want to become a professional freelance developer and earn some money on the side or as your primary source of income?

Resource: Check out our freelance developer course—it’s the best freelance developer course in the world with the highest student success rate in the industry!

Other Programming Languages Used by Professional Developers

The StackOverflow developer survey collected 58000 responses about the following question (source):

Which programming, scripting, and markup languages have you done extensive development work in over the past year, and which do you want to work in over the next year?

These are the languages you want to focus on when starting out as a coder:

And don’t worry—if you feel stuck or struggle with a nasty bug. We all go through it. Here’s what SO survey respondents and professional developers do when they’re stuck:

What do you do when you get stuck on a problem? Select all that apply. (source)

To get started with some of the fundamentals and industry concepts, feel free to check out these articles:

Where to Go From Here?

Enough theory. Let’s get some practice!

Coders get paid six figures and more because they can solve problems more effectively using machine intelligence and automation.

To become more successful in coding, solve more real problems for real people. That’s how you polish the skills you really need in practice. After all, what’s the use of learning theory that nobody ever needs?

You build high-value coding skills by working on practical coding projects!

Do you want to stop learning with toy projects and focus on practical code projects that earn you money and solve real problems for people?

🚀 If your answer is YES!, consider becoming a Python freelance developer! It’s the best way of approaching the task of improving your Python skills—even if you are a complete beginner.

If you just want to learn about the freelancing opportunity, feel free to watch my free webinar “How to Build Your High-Income Skill Python” and learn how I grew my coding business online and how you can, too—from the comfort of your own home.

Join the free webinar now!

Posted on Leave a comment

Deep Learning Engineer — Income and Opportunity

Before we learn about the money, let’s get this question out of the way:

What Is Deep Learning ?

Let’s have a look at the definition of Deep Learning

Deep learning is a subset of machine learning using artificial neural network (ANN) models with more than three layers. ANNs are inspired by the behavior of the human brain to enable machines to learn — with the idea to connect neurons with each other via artificial “synapses” and learning is modeled as the collective weights and magnitude of the neural connections.

Machine learning (ML) is a subfield of artificial intelligence (AI) that focuses on the automatic creation of models from training data that predict outcomes accurately.

This video from Lex is a great introduction into deep learning:

Related Tutorials:

Now that you know about what it is, let’s have a look at what it earns next!

Annual Income

How much does a Deep Learning Engineer make per year?

The average annual income of a Deep Learning Engineer in the United States is between $124,000 and $148,000 based on multiple sources such as Indeed, Ziprecruiter, and Salary.com.

Source Annual Income
Indeed.com $136,431
TFCertification.com $148,508
Glassdoor.com $124,558
Ziprecruiter.com $137,941
Salary.com $141,496

Let’s have a look at the hourly rate of Deep Learning Engineers next!

Hourly Rate

Deep Learning Engineers are well-paid on freelancing platforms such as Upwork or Fiverr.

If you decide to go the route as a freelance Deep Learning Engineer, you can expect to make between $25 and $120 per hour on Upwork (source). Assuming an annual workload of 2000 hours, you can expect to make between $50,000 and $240,000 per year.

⚡ Note: Do you want to create your own thriving coding business online? Feel free to check out our freelance developer course — the world’s #1 best-selling freelance developer course that specifically shows you how to succeed on Upwork and Fiverr!

Industry Demand

But is there enough demand? Let’s have a look at Google trends to find out how interest evolves over time (source):

Work Description

So, you may wonder: Deep Learning Engineer – what’s the definition?

Deep Learning Engineer Definition: A Deep Learning Engineer creates, edits, analyzes, debugs, and supervises the development of artificial neural networks (ANN) with multiple layers written in programming environments such as Python, TensorFlow, or Keras.

Learning Path, Skills, and Education Requirements

Do you want to become a Deep Learning Engineer? Here’s a step-by-step learning path I’d propose to get started with Deep Learning :

You can find many additional computer science courses on the Finxter Computer Science Academy (flatrate model).

You can see that I don’t believe you can become a master in deep learning over night. However, you can get started over night and commit to a path of continuous improvement.

But don’t wait too long to acquire practical experience!

Even if you have little skills, it’s best to get started as a freelance developer and learn as you work on real projects for clients — earning income as you learn and gaining motivation through real-world feedback.

🚀 Tip: An excellent start to turbo-charge your freelancing career (earning more in less time) is our Finxter Freelancer Course. The goal of the course is to pay for itself!

You can find more job descriptions for coders, programmers, and computer scientists in our detailed overview guide:

The following statistic shows the self-reported income from 9,649 US-based professional developers (source).

💡 The average annual income of professional developers in the US is between $70,000 and $177,500 for various programming languages.

Question: What is your current total compensation (salary, bonuses, and perks, before taxes and deductions)? Please enter a whole number in the box below, without any punctuation. If you are paid hourly, please estimate an equivalent weekly, monthly, or yearly salary. (source)

The following statistic compares the self-reported income from 46,693 professional programmers as conducted by StackOverflow.

💡 The average annual income of professional developers worldwide (US and non-US) is between $33,000 and $95,000 for various programming languages.

Here’s a screenshot of a more detailed overview of each programming language considered in the report:

Here’s what different database professionals earn:

Here’s an overview of different cloud solutions experts:

Here’s what professionals in web frameworks earn:

There are many other interesting frameworks—that pay well!

Look at those tools:

Okay, but what do you need to do to get there? What are the skill requirements and qualifications to make you become a professional developer in the area you desire?

Let’s find out next!

General Qualifications of Professionals

StackOverflow performs an annual survey asking professionals, coders, developers, researchers, and engineers various questions about their background and job satisfaction on their website.

Interestingly, when aggregating the data of the developers’ educational background, a good three quarters have an academic background.

Here’s the question asked by StackOverflow (source):

Which of the following best describes the highest level of formal education that you’ve completed?

However, if you don’t have a formal degree, don’t fear! Many of the respondents with degrees don’t have a degree in their field—so it may not be of much value for their coding careers anyways.

Also, about one out of four don’t have a formal degree and still succeeds in their field! You certainly don’t need a degree if you’re committed to your own success!

Freelancing vs Employment Status

The percentage of freelance developers increases steadily. The fraction of freelance developers has already reached 11.21%!

This indicates that more and more work will be done in a more flexible work environment—and fewer and fewer companies and clients want to hire inflexible talent.

Here are the stats from the StackOverflow developer survey (source):

Do you want to become a professional freelance developer and earn some money on the side or as your primary source of income?

Resource: Check out our freelance developer course—it’s the best freelance developer course in the world with the highest student success rate in the industry!

Other Programming Languages Used by Professional Developers

The StackOverflow developer survey collected 58000 responses about the following question (source):

Which programming, scripting, and markup languages have you done extensive development work in over the past year, and which do you want to work in over the next year?

These are the languages you want to focus on when starting out as a coder:

And don’t worry—if you feel stuck or struggle with a nasty bug. We all go through it. Here’s what SO survey respondents and professional developers do when they’re stuck:

What do you do when you get stuck on a problem? Select all that apply. (source)

To get started with some of the fundamentals and industry concepts, feel free to check out these articles:

Where to Go From Here?

Enough theory. Let’s get some practice!

Coders get paid six figures and more because they can solve problems more effectively using machine intelligence and automation.

To become more successful in coding, solve more real problems for real people. That’s how you polish the skills you really need in practice. After all, what’s the use of learning theory that nobody ever needs?

You build high-value coding skills by working on practical coding projects!

Do you want to stop learning with toy projects and focus on practical code projects that earn you money and solve real problems for people?

🚀 If your answer is YES!, consider becoming a Python freelance developer! It’s the best way of approaching the task of improving your Python skills—even if you are a complete beginner.

If you just want to learn about the freelancing opportunity, feel free to watch my free webinar “How to Build Your High-Income Skill Python” and learn how I grew my coding business online and how you can, too—from the comfort of your own home.

Join the free webinar now!

Posted on Leave a comment

Machine Learning Engineer — Income and Opportunity

Before we learn about the money, let’s get this question out of the way:

What Is Machine Learning?

Let’s have a look at the definition:

Machine learning (ML) is a subfield of artificial intelligence (AI) that focuses on the automatic creation of models from training data that predict outcomes accurately. The automatic creation of an ML model based on existing data is called training, whereas the prediction on new input data is called inference.

Due to the great performance of machine learning models on real-world problems such as self-driving cars, robotics, and natural language processing, the “subfield” ML became more and more important in recent years and started to penetrate into all areas of computing and even previously non-computing related fields.

This is an interesting video that explains the core ideas of machine learning in different levels of complexity:

Now that you know about what it is, let’s have a look at what it earns next!

Annual Income

How much does a Machine Learning Engineer make per year?

Figure: Average Machine Learning Engineer Income

The average annual income of a Machine Learning Engineer in the United States is between $112,000 and $157,000 with a median of $131,000 per year according to multiple data sources such as Indeed, Glassdoor, Salary.com, and Payscale.

Here’s a quick overview of the raw income data:

  • Indeed.com estimates the average annual income of a machine learning engineer to be $117,457 per year in the US.
  • Salary.com estimates the average annual income of a machine learning engineer to be $145,297 per year in the US.
  • Sandiego.edu estimates the average annual income of a machine learning engineer to be $146,085 per year in the US.
  • Glassdoor.com estimates the average annual income of a machine learning engineer to be $131,001 per year in the US.
  • PayScale.com estimates the average annual income of a machine learning engineer to be $112,266 per year in the US.
  • Salary.com estimates the average annual income of a machine learning engineer to be $122,817 per year in the US.
  • Talent.com estimates the average annual income of a machine learning engineer to be $140,000 per year in the US.
  • ZipRecruiter.com estimates the average annual income of a machine learning engineer to be $157,676 per year in the US.
Source Annual Income
Indeed.com $117,457
Salary.com $145,297
Sandiego.edu $146,085
Glassdoor.com $131,001
PayScale.com $112,266
Salary.com $122,817
Talent.com $140,000
ZipRecruiter.com $157,676
Table: Average Annual Income of a Machine Learning Engineer in the US by Source.

Let’s have a look at the hourly rate of Machine Learning Engineers next!

Hourly Rate

Machine Learning Engineers are well-paid on freelancing platforms such as Upwork or Fiverr.

If you decide to go the route as a freelance Machine Learning Engineer, you can expect to make between $15 and $125 per hour on Upwork (source). Assuming an annual workload of 2000 hours, you can expect to make between $30,000 and $250,000 per year.

⚡ Note: Do you want to create your own thriving coding business online? Feel free to check out our freelance developer course — the world’s #1 best-selling freelance developer course that specifically shows you how to succeed on Upwork and Fiverr!

Industry Demand

But is there enough demand? Let’s have a look at Google trends to find out how interest evolves over time (source):

Yes indeed! You can build your whole career on Machine Learning based on this data.

Work Description

So, you may wonder: Machine Learning Engineer – what’s the definition?

Machine Learning Engineer Definition: A Machine Learning Engineer creates, edits, analyzes, debugs, models, and supervises the development of machine learning models using programming languages such as Python or C++ and machine learning libraries such as Keras or TensorFlow.

Related Article:

Learning Path, Skills, and Education Requirements

Do you want to become a Machine Learning Engineer? Here’s a step-by-step learning path I’d propose to get started with Machine Learning:

You can find many additional computer science courses on the Finxter Computer Science Academy (flatrate model).

But don’t wait too long to acquire practical experience!

Even if you have little skills, it’s best to get started as a freelance developer and learn as you work on real projects for clients — earning income as you learn and gaining motivation through real-world feedback.

🚀 Tip: An excellent start to turbo-charge your freelancing career (earning more in less time) is our Finxter Freelancer Course. The goal of the course is to pay for itself!

You can find more job descriptions for coders, programmers, and computer scientists in our detailed overview guide:

The following statistic shows the self-reported income from 9,649 US-based professional developers (source).

💡 The average annual income of professional developers in the US is between $70,000 and $177,500 for various programming languages.

Question: What is your current total compensation (salary, bonuses, and perks, before taxes and deductions)? Please enter a whole number in the box below, without any punctuation. If you are paid hourly, please estimate an equivalent weekly, monthly, or yearly salary. (source)

The following statistic compares the self-reported income from 46,693 professional programmers as conducted by StackOverflow.

💡 The average annual income of professional developers worldwide (US and non-US) is between $33,000 and $95,000 for various programming languages.

Here’s a screenshot of a more detailed overview of each programming language considered in the report:

Here’s what different database professionals earn:

Here’s an overview of different cloud solutions experts:

Here’s what professionals in web frameworks earn:

There are many other interesting frameworks—that pay well!

Look at those tools:

Okay, but what do you need to do to get there? What are the skill requirements and qualifications to make you become a professional developer in the area you desire?

Let’s find out next!

General Qualifications of Professionals

StackOverflow performs an annual survey asking professionals, coders, developers, researchers, and engineers various questions about their background and job satisfaction on their website.

Interestingly, when aggregating the data of the developers’ educational background, a good three quarters have an academic background.

Here’s the question asked by StackOverflow (source):

Which of the following best describes the highest level of formal education that you’ve completed?

However, if you don’t have a formal degree, don’t fear! Many of the respondents with degrees don’t have a degree in their field—so it may not be of much value for their coding careers anyways.

Also, about one out of four don’t have a formal degree and still succeeds in their field! You certainly don’t need a degree if you’re committed to your own success!

Freelancing vs Employment Status

The percentage of freelance developers increases steadily. The fraction of freelance developers has already reached 11.21%!

This indicates that more and more work will be done in a more flexible work environment—and fewer and fewer companies and clients want to hire inflexible talent.

Here are the stats from the StackOverflow developer survey (source):

Do you want to become a professional freelance developer and earn some money on the side or as your primary source of income?

Resource: Check out our freelance developer course—it’s the best freelance developer course in the world with the highest student success rate in the industry!

Other Programming Languages Used by Professional Developers

The StackOverflow developer survey collected 58000 responses about the following question (source):

Which programming, scripting, and markup languages have you done extensive development work in over the past year, and which do you want to work in over the next year?

These are the languages you want to focus on when starting out as a coder:

And don’t worry—if you feel stuck or struggle with a nasty bug. We all go through it. Here’s what SO survey respondents and professional developers do when they’re stuck:

What do you do when you get stuck on a problem? Select all that apply. (source)

To get started with some of the fundamentals and industry concepts, feel free to check out these articles:

Where to Go From Here?

Enough theory. Let’s get some practice!

Coders get paid six figures and more because they can solve problems more effectively using machine intelligence and automation.

To become more successful in coding, solve more real problems for real people. That’s how you polish the skills you really need in practice. After all, what’s the use of learning theory that nobody ever needs?

You build high-value coding skills by working on practical coding projects!

Do you want to stop learning with toy projects and focus on practical code projects that earn you money and solve real problems for people?

🚀 If your answer is YES!, consider becoming a Python freelance developer! It’s the best way of approaching the task of improving your Python skills—even if you are a complete beginner.

If you just want to learn about the freelancing opportunity, feel free to watch my free webinar “How to Build Your High-Income Skill Python” and learn how I grew my coding business online and how you can, too—from the comfort of your own home.

Join the free webinar now!