- Identify and explain a programming development lifecycle, including planning, analysis, design, development, and maintenance.
- Demonstrate a basic understanding of object-oriented programming by using structures and classes in software projects.
- Use object-oriented programming techniques to develop executable programs that include elements such as inheritance and polymorphism.
- Document and format code in a consistent manner.
- Apply basic searching and sorting algorithms in software design.
- Apply single-and multi-dimensional arrays in software.
- Use a symbolic debugger to find and fix runtime and logical errors in software.
- Demonstrate a basic understanding of programming methodologies, including object oriented, structured, and procedural programming.
- Describe the phases of program translation from source code to executable code.
- Design and develop programs that utilize linked lists to store data internally.
- Design and develop programs that utilize stacks and queues to manage collections of data.
- Design and develop programs that recursion to solve problems that can be expressed with recurrence.
- Utilize binary search trees and balanced trees to implement fast retrieval of data from a collection of data stored in memory.
Course List
1Introduction to Programming in C++
Course Details
2Advanced Programming in C++
Course Details
3Introduction to Data Structures
Course Details
4Advanced Data Structures
Course Details
Meet Your Instructors

Aspen Olmsted

Itay Tal
Program overview
Accountants with deep financial expertise, business acumen, real-world experience, decision-making ability, and effective communication skills are vital to businesses of all sizes and have tremendous career opportunities. This MicroMasters® program in Accounting is designed for smart, hardworking students with integrity and passion who want to substantially enhance their understanding of accounting. The program curriculum includes courses in the three most fundamental areas of accounting: financial accounting, managerial accounting, and income taxes. Learn from world-renowned, award-winning accounting faculty at the top-ranked Kelley School of Business at Indiana University. The MicroMasters program will introduce you to the following key areas in the accounting profession:
Financial Reporting I – How do firms measure and report financial position and financial performance in a set of financial statements?
Managerial Accounting and Corporate Control – How do firms make critical strategic decisions using accounting information?
Taxes and Decision Making – How do income taxes impact firms, their strategies, capital structure, and after-tax profits?
The three graduate-level courses in the MicroMasters program represent 30% of the coursework in the online Master of Science in Accounting from the Kelley School of Business at Indiana University offered on the edX platform.
The online Master of Science in Accounting program is designed for individuals who want to transition to an accounting career and for individuals who want to deepen their understanding of accounting’s role in investing, banking, and corporate management. The Kelley School of Business is currently ranked #7 for graduate accounting programs by Public Accounting Report.
Completing this MicroMasters program in accounting can strengthen your application to the online Master of Science in Accounting program, as well as advance your career.
What you will learn
- What information do firms measure and report in a wide array of transactions, events, and arrangements in balance sheets, income statements, and statements of cash flows?
- What are key elements of financial reporting, such as revenues, expenses, gains and losses, net income, assets, liabilities, and owners’ equity?
- How do firms develop and use key internal information such as product costs, cost allocations, customer profitability, budgets, and planning to execute and control firm strategy?
- How do income taxes impact firms? How do firms measure and report taxable income and taxes payable? And how do firms strategically plan for and manage the impact of taxes on profitability?
- Accounting standards, including U.S. Generally Accepted Accounting Principles (U.S. GAAP) and International Financial Reporting Standards (IFRS).
Program Class List
1Financial Reporting I
Course Details
2Managerial Accounting and Corporate Control
Course Details
3Taxes and Decision Making
Course Details
Meet Your Instructors

Ken Merkley

Brian P. Miller

Greg Geisler
Testimonials
Program Overview
This MicroMasters program is a mix of theory and practice: you will learn algorithmic techniques for solving various computational problems through implementing over one hundred algorithmic coding problems in a programming language of your choice.
No other online course in Algorithms even comes close to offering you a wealth of programming challenges that you may face at your next job interview. To prepare you, we have invested thousands of hours designing challenges as an alternative to multiple choice questions that you usually find in MOOCs. We believe in learning through application, especially when it comes to learning algorithms.
For each algorithm you develop and implement, we have designed multiple tests to check its correctness and running time — you will have to debug your programs without even knowing what these tests are! It may sound difficult, but we believe it is the only way to truly understand how the algorithms work and to master the art of programming.
What you will learn
- Understand essential algorithmic techniques and apply them to solve algorithmic problems
- Implement programs that work in less than one second even on massive datasets
- Test and debug your code even without knowing the input on which it fails
- Formulate real life computational problems as rigorous algorithmic problems
- Prove correctness of an algorithm and analyze its running time
Program Class List
1Algorithmic Design and Techniques
Course Details
2Data Structures Fundamentals
Course Details
3Graph Algorithms
Course Details
4NP-Complete Problems
Course Details
5String Processing and Pattern Matching Algorithms
Course Details
6Dynamic Programming: Applications In Machine Learning and Genomics
Course Details
7Graph Algorithms in Genome Sequencing
Course Details
8Algorithms and Data Structures Capstone
Course Details
Meet your instructors

Pavel Pevzner

Daniel Kane

Alexander S. Kulikov

Michael Levin

Neil Rhodes
