top of page

Artificial Intelligence (AI) and Machine Learning (ML)

Relevant Coursework:

  • CSCE 1030 - Computer Science I

  • CSCE 1040 - Computer Science II

  • CSCE 2100 - Foundations of Computing

  • CSCE 2110 - Foundations of Data Structures (instead of "Computer Organization and Assembly Language Programming")

  • CSCE 2610 - Assembly Language and Computer Organization (critical for robotics and low-level AI applications)

  • CSCE 3201 - Applied Artificial Intelligence

  • CSCE 3214 - Software Development for Artificial Intelligence

  • CSCE 3550 - Foundations of Cybersecurity (important for ethical AI applications and secure systems)

  • MATH 1780 - Probability Models or MATH 3680 - Applied Statistics (essential for AI/ML algorithms and research)

Recommended Electives:

  • Machine Learning: Explore frameworks like TensorFlow and PyTorch, and advanced algorithms for supervised and unsupervised learning.

  • Natural Language Processing: Delve into language models, sentiment analysis, and sequence-to-sequence models.

  • Computer Vision: Study image processing, feature extraction, and deep learning techniques for vision tasks.

  • Robotics: Learn kinematics, dynamics, and autonomous systems.

  • Big Data and Cloud Computing: Understand how to train and deploy large AI models.

Median Total Comp: (will be updated with resources)

  • AI/ML Engineer: $100,000 - $150,000+ annually

  • Natural Language Processing (NLP) Engineer: $100,000 - $160,000+ annually

  • Computer Vision Engineer: $100,000 - $160,000+ annually

  • Robotics Engineer: $90,000 - $150,000+ annually

  • AI Research Scientist: $110,000 - $180,000+ annually

Top Tech Companies:
Google, Facebook (Meta), Amazon, Microsoft, IBM, Apple, NVIDIA, Intel, DeepMind, OpenAI, Baidu, Waymo, Tesla, iRobot, ABB, Fanuc, Universal Robots, Boston Dynamics, Amazon Robotics

AI/ML Engineer

Machine Learning Fundamentals:

  • In-depth understanding of machine learning algorithms, techniques, and concepts.

  • Supervised, unsupervised, and reinforcement learning.

Data Preprocessing and Feature Engineering:

  • Cleaning, preprocessing, and transforming raw data into suitable formats.

  • Feature selection and extraction to enhance model performance.

Programming and Scripting Languages:

  • Proficiency in programming languages commonly used in ML (e.g., Python, R).

  • Frameworks and libraries like TensorFlow, PyTorch, scikit-learn, and Keras.

Data Exploration and Visualization:

  • Exploratory data analysis (EDA) techniques to gain insights from data.

  • Data visualization tools like Matplotlib, Seaborn, or Plotly.

Model Development and Training:

  • Developing machine learning models using appropriate algorithms.

  • Training and fine-tuning models on large datasets.

Model Evaluation and Metrics:

  • Understanding evaluation metrics (e.g., accuracy, precision, recall, F1-score, ROC AUC) for model performance assessment.

  • Cross-validation techniques.

Deep Learning (Optional):

  • Knowledge of deep neural networks (e.g., CNNs, RNNs, Transformers) for complex tasks.

  • Deep learning frameworks like TensorFlow and PyTorch.

Natural Language Processing (NLP) (Optional):

  • NLP techniques for text analysis, sentiment analysis, and language modeling.

  • NLP libraries like NLTK, spaCy, and Hugging Face Transformers.

Computer Vision (Optional):

  • Computer vision concepts for image and video analysis.

  • Computer vision frameworks like OpenCV.

Reinforcement Learning (Optional):

  • Understanding reinforcement learning algorithms for decision-making tasks.

  • Reinforcement learning frameworks like OpenAI Gym.

Deployment and Productionisation:

  • Deploying machine learning models in production environments.

  • Containerization (e.g., Docker) and deployment tools (e.g., Kubernetes).

Data Ethics and Bias (Optional):

  • Awareness of ethical considerations, fairness, and bias in AI/ML models.

  • Strategies for mitigating bias.

Version Control and Collaboration:

  • Using version control systems (e.g., Git) for collaborative ML development.

  • Collaborative tools and platforms.

Cloud Computing (Optional):

  • Leveraging cloud platforms (e.g., AWS, Azure, GCP) for scalable ML infrastructure.

  • Serverless computing.

Big Data Technologies (Optional):

  • Working with big data frameworks (e.g., Hadoop, Spark) for handling large datasets.

Explainable AI (Optional):

  • Techniques to interpret and explain model predictions.

Continuous Learning:

  • Staying updated with the latest advancements in AI/ML, research papers, and best practices.

  • Engaging with the AI/ML community, attending conferences, and participating in online forums.

Natural Language Processing (NLP) Engineer

Linguistics Fundamentals

  • Understanding of linguistic concepts, including syntax, semantics, morphology, and phonology.

  • Knowledge of linguistic data annotation and linguistic corpora.

Programming Languages

  • Proficiency in programming languages commonly used in NLP, such as Python and sometimes Java or C++.

  • Familiarity with libraries like NLTK, spaCy, Gensim, Transformers, and scikit-learn.

Machine Learning and Deep Learning

  • Understanding of machine learning algorithms and techniques used in NLP:

    • Supervised learning for tasks like text classification and named entity recognition.

    • Unsupervised learning for clustering and topic modeling.

    • Deep learning for NLP, including recurrent neural networks (RNNs) and transformer models (e.g., BERT, GPT).

Text Preprocessing

  • Data cleaning and preprocessing techniques specific to text data.

  • Tokenization, stemming, lemmatization, and stop word removal.

Named Entity Recognition (NER)

  • Implementing NER techniques for extracting entities (e.g., names, dates, locations) from text.

Part-of-Speech Tagging (POS)

  • Developing POS tagging systems to assign grammatical categories to words in sentences.

Sentiment Analysis

  • Building sentiment analysis models to determine the emotional tone of text (positive, negative, neutral).

Text Classification

  • Creating text classification models for tasks like spam detection, sentiment analysis, topic categorization, and intent recognition.

Machine Translation

  • Understanding machine translation models and techniques (e.g., Neural Machine Translation).

Word Embeddings

  • Familiarity with word embedding techniques like Word2Vec, GloVe, and FastText.

  • Using pre-trained word embeddings for NLP tasks.

Sequence-to-Sequence Models

  • Knowledge of sequence-to-sequence models for tasks like machine translation and text summarization.

Language Models

  • Understanding of language models like BERT and GPT for various NLP tasks.

Dependency Parsing

  • Implementing dependency parsing algorithms to analyze syntactic relationships between words in sentences.

Speech Recognition (Optional)

  • Familiarity with speech recognition technologies and tools.

Natural Language Generation (NLG)

  • Understanding NLG techniques for generating human-like text.

NLP Libraries and Frameworks

  • Proficiency in using NLP libraries and frameworks like spaCy, NLTK, Transformers, and TensorFlow.

Data Annotation and Labeling

  • Experience with annotating and labeling training data for supervised learning tasks.

Evaluation Metrics

  • Knowledge of evaluation metrics relevant to NLP tasks (e.g., F1 score, BLEU score).

Domain-Specific Knowledge

  • Depending on the application, familiarity with the specific domain or industry of the NLP project.

Continuous Learning

  • Staying updated with the latest NLP advancements, tools, and best practices.

  • Engaging with the NLP community, attending conferences, and participating in online forums.

​

Computer Vision Engineer

Linguistics Fundamentals

  • Understanding of linguistic concepts, including syntax, semantics, morphology, and phonology.

  • Knowledge of linguistic data annotation and linguistic corpora.

Programming Languages

  • Proficiency in programming languages commonly used in NLP, such as Python and sometimes Java or C++.

  • Familiarity with libraries like NLTK, spaCy, Gensim, Transformers, and scikit-learn.

Machine Learning and Deep Learning

  • Understanding of machine learning algorithms and techniques used in NLP:

    • Supervised learning for tasks like text classification and named entity recognition.

    • Unsupervised learning for clustering and topic modeling.

    • Deep learning for NLP, including recurrent neural networks (RNNs) and transformer models (e.g., BERT, GPT).

Text Preprocessing

  • Data cleaning and preprocessing techniques specific to text data.

  • Tokenization, stemming, lemmatization, and stop word removal.

Named Entity Recognition (NER)

  • Implementing NER techniques for extracting entities (e.g., names, dates, locations) from text.

Part-of-Speech Tagging (POS)

  • Developing POS tagging systems to assign grammatical categories to words in sentences.

Sentiment Analysis

  • Building sentiment analysis models to determine the emotional tone of text (positive, negative, neutral).

Text Classification

  • Creating text classification models for tasks like spam detection, sentiment analysis, topic categorization, and intent recognition.

Machine Translation

  • Understanding machine translation models and techniques (e.g., Neural Machine Translation).

Word Embeddings

  • Familiarity with word embedding techniques like Word2Vec, GloVe, and FastText.

  • Using pre-trained word embeddings for NLP tasks.

Sequence-to-Sequence Models

  • Knowledge of sequence-to-sequence models for tasks like machine translation and text summarization.

Language Models

  • Understanding of language models like BERT and GPT for various NLP tasks.

Dependency Parsing

  • Implementing dependency parsing algorithms to analyze syntactic relationships between words in sentences.

Speech Recognition (Optional)

  • Familiarity with speech recognition technologies and tools.

Natural Language Generation (NLG)

  • Understanding NLG techniques for generating human-like text.

NLP Libraries and Frameworks

  • Proficiency in using NLP libraries and frameworks like spaCy, NLTK, Transformers, and TensorFlow.

Data Annotation and Labeling

  • Experience with annotating and labeling training data for supervised learning tasks.

Evaluation Metrics

  • Knowledge of evaluation metrics relevant to NLP tasks (e.g., F1 score, BLEU score).

Domain-Specific Knowledge

  • Depending on the application, familiarity with the specific domain or industry of the NLP project.

Continuous Learning

  • Staying updated with the latest NLP advancements, tools, and best practices.

  • Engaging with the NLP community, attending conferences, and participating in online forums.

​

Robotics Engineer

Mechanical Engineering

  • Understanding of mechanical principles, including kinematics and dynamics.

  • Knowledge of materials, manufacturing processes, and mechanical design.

Electrical Engineering

  • Proficiency in electrical and electronic circuits.

  • Familiarity with sensors, actuators, and control systems.

Computer Science and Programming

  • Proficiency in programming languages commonly used in robotics, such as Python, C++, and ROS (Robot Operating System).

  • Algorithms and data structures for robot control and navigation.

Robotics Fundamentals

  • Knowledge of robotics basics, including robot kinematics, dynamics, and control.

  • Understanding of robot perception (sensors and cameras) and decision-making algorithms.

Robot Hardware Design

  • Designing and building robot hardware, including mechanical structures and electronic components.

  • Knowledge of mechatronics and sensor integration.

Robot Control and Navigation

  • Implementing robot control algorithms for tasks like path planning, localization, and motion control.

  • Understanding of PID controllers, Kalman filters, and SLAM (Simultaneous Localization and Mapping).

Robot Vision

  • Familiarity with computer vision techniques for robot perception.

  • Image processing, object detection, and tracking.

Robot Manipulation and Manipulators

  • Understanding robot manipulator design and kinematics.

  • Grasping and manipulation techniques for robotic arms and end-effectors.

Robot Dynamics and Simulation

  • Simulation tools for modeling and testing robot behavior.

  • Gazebo and V-REP for robot simulation.

Human-Robot Interaction (HRI)

  • Knowledge of HRI principles for collaborative robots (cobots) and human-robot teamwork.

Robot Operating System (ROS)

  • Proficiency in ROS, a widely used framework for developing and controlling robots.

  • ROS packages, nodes, and message passing.

AI and Machine Learning for Robotics

  • Understanding of AI and ML algorithms for perception and decision-making.

  • Reinforcement learning for robot control.

Control Systems Engineering

  • Knowledge of control theory and control systems design.

  • PID control, state-space control, and feedback control.

Embedded Systems

  • Proficiency in embedded systems programming for real-time control of robots.

  • Microcontrollers and microprocessors.

Ethics and Safety in Robotics

  • Awareness of ethical considerations and safety protocols in robotics, especially in autonomous systems.

Robotics Software Development

  • Software engineering practices for developing and maintaining robotic systems.

  • Version control, software architecture, and testing.

Continuous Learning

  • Staying updated with the latest advancements in robotics technology and research.

  • Engaging with the robotics community, attending conferences, and participating in online forums.

Project Management

  • Effective project management skills for planning, executing, and completing robotics projects.

Mobile Robotics

  • Knowledge of mobile robotics, including wheeled and legged robots, drones, and autonomous vehicles.

Industrial Robotics (Optional)

  • Understanding of industrial robot applications, automation, and robotic arms in manufacturing.

AI Research Scientist

Mathematics

  • Mastery of mathematical concepts including linear algebra, calculus, probability theory, and statistics.

  • Knowledge of optimization algorithms.

  • In-depth understanding of machine learning algorithms and techniques.

  • Proficiency in deep learning frameworks like TensorFlow and PyTorch.

  • Experience

Computer Science

  • Strong programming skills in languages like Python and C++.

  • Knowledge of data structures, algorithms, and software engineering principles.

Natural Language Processing (NLP) (Optional)

  • Understanding of NLP techniques for text data analysis and language modeling.

Computer Vision (Optional)

  • Familiarity with computer vision algorithms and techniques for image and video analysis.

Reinforcement Learning (Optional)

  • Knowledge of reinforcement learning algorithms and applications.

  • Awareness of ethical considerations in AI research and development.

Research Methodology

  • Skills in conducting scientific research, including experimental design, data collection, and analysis.

  • Writing research papers and communicating findings effectively.

Data Management and Preprocessing

  • Handling large datasets and data pipelines.

  • Knowledge of various neural network architectures (e.g., CNNs, RNNs, Transformers).

  • Model selection and hyperparameter tuning.

Reinforcement Learning (Optional)

  • Understanding of reinforcement learning algorithms and applications.

  • Experience with RL libraries like OpenAI Gym.

AI Tools and Frameworks

  • Familiarity with AI development tools and libraries, including scikit-learn, NLTK, spaCy, and others.

Experimentation and Evaluation

  • Designing experiments to test AI models and algorithms.

  • Evaluation metrics and statistical significance.

Continuous Learning

  • Staying updated with the latest AI research papers, advancements, and trends.

  • Engaging with the AI research community, attending conferences, and participating in online forums.

Domain Knowledge (Optional)

  • Depending on research focus, domain-specific knowledge may be required (e.g., healthcare, finance, robotics).

Collaboration Skills

  • Collaborating with interdisciplinary teams and researchers.

  • Effective communication of research findings to both technical and non-technical audiences.

Project Management

  • Managing research projects efficiently, setting milestones, and meeting deadlines.

PhD (Optional)

  • Many AI Research Scientists hold a Ph.D. in computer science or a related field, although it's not always required.

bottom of page