Skip to main content

· 3 min read
Kyeongsup Choi

1. Beginner

Skills:

  • Basic understanding of server-side programming languages (e.g., Python, Node.js, Java, Ruby).
  • Familiarity with HTTP protocols, request/response cycles, and basic client-server architecture.
  • Ability to set up a simple server using frameworks like Flask, Express, or Django.
  • Basic understanding of databases (SQL or NoSQL) and how to perform CRUD operations (Create, Read, Update, Delete).
  • Awareness of RESTful API concepts and how to create simple endpoints.

Example Tasks:

  • Setting up a simple web server that responds to HTTP requests.
  • Writing API endpoints that interact with a database.
  • Implementing basic user authentication and handling form data.

2. Intermediate

Skills:

  • Proficient in designing and implementing RESTful APIs with CRUD functionality.
  • Understanding of relational databases (e.g., MySQL, PostgreSQL) and NoSQL databases (e.g., MongoDB, Redis), including schema design, relationships, and indexing.
  • Familiar with middleware, routing, and handling file uploads.
  • Knowledge of authentication methods like OAuth, JWT, and sessions.
  • Experience with version control systems (e.g., Git) and basic knowledge of continuous integration and deployment (CI/CD).

Example Tasks:

  • Developing an API for user management (e.g., authentication, authorization).
  • Designing a relational database schema and optimizing queries.
  • Setting up middleware for logging, error handling, and security in a web application.
  • Connecting your backend with external services via APIs (e.g., payment gateways, third-party APIs).

3. Advanced

Skills:

  • Expertise in building scalable and secure APIs, including complex query optimization, advanced authentication/authorization (e.g., SSO, RBAC).
  • Knowledge of microservices architecture and ability to design and develop microservices-based applications.
  • Proficient in using messaging queues (e.g., RabbitMQ, Kafka) for asynchronous processing and communication.
  • Experience with cloud infrastructure (e.g., AWS, Google Cloud, Azure), containerization (Docker), and orchestration tools (Kubernetes).
  • Understanding of caching strategies, load balancing, and scaling backend systems to handle high traffic.

Example Tasks:

  • Designing and deploying a microservices-based architecture with services that communicate asynchronously.
  • Setting up continuous integration/continuous deployment (CI/CD) pipelines for automated testing and deployment.
  • Implementing caching strategies (e.g., Redis, Memcached) to optimize API performance.
  • Designing highly available and scalable systems using cloud services and containerization.

4. Expert

Skills:

  • Mastery of distributed systems, including managing data consistency, eventual consistency, and CAP theorem implications.
  • Expertise in backend architecture patterns (e.g., event-driven architecture, CQRS, serverless) for complex and high-traffic systems.
  • Deep knowledge of security best practices, including encryption, secure communication, and data protection in large-scale applications.
  • Extensive experience with database replication, sharding, and high availability setups.
  • Ability to lead backend development teams, perform code reviews, and ensure code quality standards.
  • Familiarity with DevOps tools and practices, including Infrastructure as Code (IaC) and full automation of deployment pipelines.

Example Tasks:

  • Architecting large-scale distributed systems with fault-tolerant and highly available components.
  • Implementing advanced security mechanisms like end-to-end encryption and secure API gateways.
  • Leading a backend development team, defining project architecture, and overseeing codebase and deployment strategies.
  • Optimizing backend services to handle millions of users or high-volume real-time data streams.

· 3 min read
Kyeongsup Choi

1. Beginner

Skills:

  • Basic understanding of statistics and data analysis.
  • Familiarity with spreadsheets or basic data manipulation tools (e.g., Excel).
  • Ability to use simple data visualization tools (e.g., Excel, Google Sheets, or Python’s matplotlib and seaborn).
  • Introductory knowledge of programming (Python or R) and basic libraries (e.g., Pandas, NumPy).
  • Basic knowledge of data types (structured, semi-structured, and unstructured data).

Example Tasks:

  • Plotting simple graphs (bar charts, line graphs) to visualize data.
  • Calculating mean, median, mode, variance, and other basic statistical metrics.
  • Loading and cleaning small datasets.

2. Intermediate

Skills:

  • Proficient in data wrangling: loading, cleaning, and transforming data using libraries like Pandas, NumPy, or R’s dplyr.
  • Good understanding of probability, statistical testing (e.g., hypothesis testing, confidence intervals), and distributions.
  • Basic knowledge of machine learning algorithms (e.g., linear regression, decision trees) and their applications.
  • Experience with data visualization libraries (e.g., matplotlib, seaborn, or ggplot2).
  • Ability to perform exploratory data analysis (EDA) and extract insights from datasets.
  • Familiarity with supervised and unsupervised learning concepts.

Example Tasks:

  • Cleaning and transforming large datasets using Pandas or NumPy.
  • Creating visualizations for data distributions and relationships (scatter plots, histograms).
  • Implementing and evaluating simple machine learning models like linear regression or K-means clustering.
  • Performing A/B testing or statistical analysis on datasets.

3. Advanced

Skills:

  • Proficient in implementing complex machine learning algorithms (e.g., random forests, gradient boosting, neural networks) using libraries like scikit-learn, TensorFlow, or PyTorch.
  • Strong understanding of feature engineering, hyperparameter tuning, model evaluation, and optimization techniques.
  • Experience working with large-scale datasets and using cloud platforms for data storage and computation (e.g., AWS, GCP, Azure).
  • Familiarity with big data tools and frameworks (e.g., Hadoop, Spark).
  • Ability to work with databases (SQL) and unstructured data (e.g., text data with NLP).
  • Knowledge of deep learning and more advanced topics like natural language processing (NLP), reinforcement learning, or computer vision.

Example Tasks:

  • Building and fine-tuning machine learning models for production.
  • Performing sentiment analysis on text data using NLP techniques.
  • Creating predictive models using time series analysis or deep learning methods.
  • Implementing machine learning pipelines for automated model training and deployment.

4. Expert

Skills:

  • Mastery of complex algorithms and advanced techniques, such as deep learning architectures (e.g., CNNs, RNNs, Transformers) or reinforcement learning.
  • Deep understanding of data science workflows, MLOps (machine learning operations), and the deployment of machine learning models in production environments.
  • Expertise in using cloud platforms, distributed computing, and handling real-time data streams.
  • Strong ability to create custom machine learning models, handle imbalanced data, and apply transfer learning.
  • Leadership experience in designing large-scale data science projects, mentoring teams, and making data-driven business decisions.

Example Tasks:

  • Designing and implementing custom deep learning architectures for complex problems (e.g., image recognition, natural language understanding).
  • Leading a team of data scientists in building scalable and efficient data pipelines.
  • Managing and deploying machine learning models at scale for real-time or high-impact applications.
  • Developing and deploying end-to-end AI systems and integrating them with business operations.

· 3 min read
Kyeongsup Choi

1. Beginner

Skills:

  • Basic navigation and familiarity with the Excel interface (e.g., entering data, formatting cells, and using basic functions).
  • Ability to perform basic arithmetic using formulas (SUM, AVERAGE, MIN, MAX, etc.).
  • Sorting and filtering data in a spreadsheet.
  • Creating simple charts and graphs (e.g., bar charts, pie charts).
  • Basic formatting skills (e.g., changing fonts, adjusting column widths, and cell colors).

Example Tasks:

  • Creating a simple budget or expense tracker.
  • Applying basic formatting for readability.
  • Using SUM and AVERAGE to calculate totals and averages.

2. Intermediate

Skills:

  • Proficient with more advanced formulas and functions (IF, VLOOKUP, HLOOKUP, COUNTIF, SUMIF).
  • Ability to work with large datasets, including filtering, sorting, and conditional formatting.
  • Experience with PivotTables for summarizing data and performing basic analysis.
  • Familiarity with data validation and creating drop-down lists for controlled data entry.
  • Knowledge of linking multiple sheets and workbooks together.

Example Tasks:

  • Creating a dynamic sales report using PivotTables.
  • Using VLOOKUP to match data from different sheets.
  • Applying conditional formatting to highlight key data points (e.g., top 10 values, color coding based on thresholds).

3. Advanced

Skills:

  • Mastery of advanced formulas (e.g., INDEX, MATCH, ARRAY, OFFSET, INDIRECT).
  • Proficient with advanced data analysis tools like PivotCharts and data consolidation across multiple sources.
  • Knowledge of advanced data manipulation techniques, including data modeling and Power Query.
  • Proficiency in using Excel’s data analysis tools (e.g., Solver, Goal Seek, and scenario analysis).
  • Ability to create complex, dynamic dashboards with interactive elements (e.g., slicers, dynamic charts).

Example Tasks:

  • Building a comprehensive financial model or business forecasting tool.
  • Using Power Query to clean and transform large datasets.
  • Creating advanced dashboards with PivotCharts and dynamic visualizations.

4. Expert

Skills:

  • Mastery of VBA (Visual Basic for Applications) for automating complex tasks and building custom Excel functions.
  • Ability to design macros for automating repetitive tasks and creating user-defined functions.
  • Extensive experience with Excel’s data analysis add-ins and external integrations (e.g., Power Pivot, Power BI).
  • Expertise in working with large datasets, advanced statistical analysis, and complex data visualizations.
  • Knowledge of collaborating with other tools and systems (e.g., integrating Excel with databases, APIs, or external applications).

Example Tasks:

  • Automating report generation with custom VBA scripts and macros.
  • Designing complex financial or operational models with scenario analysis and sensitivity testing.
  • Creating custom functions or add-ins to extend Excel’s native capabilities.
  • Handling and analyzing data from external sources (e.g., SQL databases) and integrating it with Excel workflows.

· 2 min read
Kyeongsup Choi

1. Beginner

Skills:

  • Basic understanding of Python syntax and data structures (lists, tuples, dictionaries, sets).
  • Ability to write simple programs using variables, loops, conditionals, and functions.
  • Understanding basic concepts like input/output, string manipulation, and basic error handling.
  • Limited experience with libraries (e.g., math, random).

Example Tasks:

  • Writing a program to print Fibonacci numbers.
  • Simple file handling (e.g., reading and writing text files).
  • Using loops to iterate over data structures.

2. Intermediate

Skills:

  • Deeper understanding of data structures and algorithms.
  • Familiarity with object-oriented programming (OOP) principles: classes, inheritance, polymorphism, encapsulation.
  • Ability to use third-party libraries and frameworks (e.g., Pandas, NumPy, Flask).
  • Understanding of error handling using exceptions.
  • Familiarity with modules, packages, and Python's standard library.

Example Tasks:

  • Writing a web scraper using libraries like BeautifulSoup or Scrapy.
  • Creating a simple web application using Flask or Django.
  • Data manipulation and analysis using Pandas and NumPy.
  • Implementing algorithms like sorting or searching.

3. Advanced

Skills:

  • Proficient in working with complex data structures (e.g., generators, iterators).
  • Expert in OOP, design patterns, and advanced Python concepts (e.g., decorators, context managers).
  • Understanding concurrency and parallelism (using threading, multiprocessing, async/await).
  • Proficiency in performance optimization (e.g., time complexity, memory usage).
  • Experience with debugging, testing (unit tests, integration tests), and version control (e.g., Git).

Example Tasks:

  • Developing a large-scale application with efficient data handling.
  • Building and maintaining APIs with complex architectures.
  • Writing unit tests and utilizing continuous integration (CI/CD).
  • Implementing machine learning models with libraries like TensorFlow or PyTorch.

4. Expert

Skills:

  • Mastery of Python internals, such as memory management, garbage collection, and bytecode.
  • Ability to contribute to Python core development or design custom libraries and tools.
  • Deep understanding of multithreading, asynchronous programming, and distributed systems.
  • Familiarity with low-level programming concepts (e.g., interfacing Python with C/C++).
  • Knowledge of various domains such as web development, machine learning, automation, data science, and scripting.

Example Tasks:

  • Designing complex, scalable systems and APIs for production.
  • Implementing and optimizing large-scale machine learning pipelines.
  • Contributing to open-source Python projects or writing custom Python extensions.

· 3 min read
Kyeongsup Choi

1. Beginner

Skills:

  • Understanding basic SQL syntax and queries.
  • Ability to create simple queries to retrieve data using SELECT, WHERE, and ORDER BY clauses.
  • Familiarity with basic data operations like INSERT, UPDATE, and DELETE.
  • Basic knowledge of filtering data with operators like =, >, <, LIKE, and IN.

Example Tasks:

  • Writing a query to select data from a table based on specific conditions.
  • Sorting and filtering results using ORDER BY and WHERE.
  • Inserting new rows into a table.

2. Intermediate

Skills:

  • Proficiency with JOIN operations (INNER, LEFT, RIGHT, FULL OUTER) to combine data from multiple tables.
  • Ability to group and aggregate data using GROUP BY and aggregate functions (COUNT, SUM, AVG, MAX, MIN).
  • Understanding of subqueries and nested queries.
  • Knowledge of database constraints (e.g., primary keys, foreign keys, unique constraints) and indexes.
  • Experience with database normalization and designing relational database schemas.

Example Tasks:

  • Joining multiple tables to retrieve related data.
  • Writing queries to summarize data using group functions like COUNT or SUM.
  • Creating database tables and defining relationships between them.

3. Advanced

Skills:

  • Advanced query optimization techniques to improve query performance (e.g., indexing, query plans).
  • Ability to write complex stored procedures, functions, and triggers.
  • Proficiency in advanced SQL features like WITH (CTE, Common Table Expressions) and window functions (e.g., ROW_NUMBER(), RANK()).
  • Knowledge of database transactions, ACID properties, and handling concurrency and isolation levels.
  • Proficient in database security, user roles, and permissions management.

Example Tasks:

  • Writing stored procedures and complex triggers to automate database operations.
  • Optimizing slow queries by analyzing query plans and using appropriate indexing.
  • Implementing transaction-safe SQL queries and managing concurrency.

4. Expert

Skills:

  • Deep understanding of database architecture and internals (e.g., how indexes work, locking mechanisms, execution plans).
  • Expertise in database design, partitioning strategies, and sharding for large-scale systems.
  • Proficiency in advanced optimization techniques and tuning complex queries for performance.
  • Ability to manage and configure database replication, backup, recovery, and high availability setups.
  • Familiar with various database technologies (e.g., relational vs. NoSQL) and how to use SQL in different environments (e.g., cloud databases).

Example Tasks:

  • Designing and implementing highly scalable database architectures for enterprise applications.
  • Performing complex query optimization and database tuning for high-performance systems.
  • Configuring and maintaining database clusters and replication systems.