, Index Performance
, Document Store
, Category Tree
, Crop Ratio
, Programmer Teacher
, Employee Manager
, Merge Stock Index
, Chain Link
, Cheapest Product
, Movies Live
, ATM Locations
, Department Report
, Delete Orders
, Restaurant Menu
, Student Activities
, Youngest Child
, Is Alpha
, Log Parser
, Medical Record
, Numbers to Text
, Word Count
, Date Transform
, Cargo Ship
, Unique Numbers
, Log Patch
, Max Sum
, Tuple Slice
, Reward Points
, Bank Branches
, Hospital Patients
, Menu Items
, Ban Users
, Moving Total
, SMS Messages
, Read First Line
, Read Write Execute
SQL is the dominant technology for accessing application data. It is increasingly becoming a performance bottleneck when it comes to scalability. Given its dominance, SQL is a crucial skill for all engineers.
An aggregate function is typically used in database queries to group together multiple rows to form a single value of meaningful data. A good programmer should be skilled at using data aggregation functions when interacting with databases.
Subqueries are commonly used in database interactions, making it important for a programmer to be skilled at writing them.
The proper implementation and use of indexes are important for improving the performance of database queries.
Conditional statements are a feature of most programming and query languages. They allow the programmer to control what computations are carried out based on a Boolean condition.
Python is a widely used, high-level, general-purpose, interpreted, dynamic programming language. Having a basic familiarity with the programming language used on the job is a prerequisite for quickly getting up to speed.
Everyone makes mistakes. A good programmer should be able to find and fix a bug in their or someone else's code.
A programmer should use a language as a tool, always taking advantage of language-specific data types and built-in functions.
Choosing the right data structure to solve a problem can have huge implications on the performance of an application. Knowing when to use a specific data structure is one of the most important skills for a programmer.
Object-oriented programming is a paradigm based on encapsulating logic and data into objects, which may then contain fields and procedures. Many of the most widely used programming languages are based on OOP, making it a very important concept in modern programming.
Even though most database insert queries are simple, a good programmer should know how to handle more complicated situations like batch inserts.
A normalized database is normally made up of multiple tables. Joins are, therefore, required to query across multiple tables.
In mathematics, a union typically involves testing if an element exists in two or more sets. This definition also applies as an operator and function in various programming languages. As one of the most common collection operations, alongside intersection, it's an important topic for any candidate to understand.
Constraints are used to define rules and relationships. They are applied to a dataset. A constraint may take many forms, such as x ≤ 5 in a programming language and a NOT NULL constraint in a SQL table definition.
A database schema defines how data is stored in a database. An SQL database uses a schema to define tables consisting of rows and columns that use fixed data types to store data. Formalizing how data is stored is the first step towards building an application or service.
The delete statement is used to delete records in a table and is one of the four basic CRUD functions (create, read, update, and delete) required for working with any persistent storage.
The UPDATE statement is used to modify the existing records in a table and is one of the most used operations for working with the database.
A database view is a result set that is defined by a stored query, the results of which can can also be queried. As a fundamental and widely used database construct, it's useful for candidates to understand how and when they should be used.
A list comprehension is a syntactic construct for creating a list based on existing lists. As this is a common task, every programmer should be familiar with it.
The string data structure is used to represent text. It is one of the most commonly used data structures. Therefore, every programmer should be skilled at string manipulation.
Familiarity with data serialization to and from formats such as XML and JSON is important as it is commonly used for interprocess communication
A collection is a grouping of a variable number of data items. Many programming languages implement support for custom collections in their class libraries or utilities, as such it's an important topic for a developer to be familiar with.
A stream is a sequence of data elements made available over time. It is particularly useful for tasks that may benefit from being asynchronous, including tasks such as I/O processing or reading from a file, and as such is important for developers to understand.
Every programmer should be familiar with data-sorting methods, as sorting is very common in data-analysis processes.
When designing and/or analyzing an algorithm or data structure, it is important to consider the performance and structure of an implementation. Algorithmic thinking is one of the key traits of a good programmer, especially one working on complex or performance-critical code.
Every programmer should be familiar with data-searching methods, as they are very common in data-analysis processes.
Monkey Patching is a method of either adding new or overriding existing functionality without the creation of a new type. As such it's an important tool for developers to be familiar with.
Iteration is the act of repeating a process, or cycling through a collection. Iteration is one of the fundamental flow control tools available to developers.
Lists are one of the most commonly used data structures and every programmer should be familiar with the operations they provide.
Arithmetic is a fundamental branch of mathematics. An understanding of arithmetic concepts, and their application, is important for every candidate.
The performance of an application or system is important. The responsiveness and scalability of an application are all related to how performant an application is. Each algorithm and query can have a large positive or negative effect on the whole system.
Exceptions exist in most modern programming languages, making it important for a programmer to understand them and know how to handle them.