Take your first step towards a career in software development with this introduction to Java—one of the most in-demand programming languages and the foundation of the Android operating system. Designed for beginners, this Specialization will teach you core programming concepts and equip you to write programs to solve complex problems. In addition, you will gain the foundational skills a software engineer needs to solve real-world problems, from designing algorithms to testing and debugging your programs.
Centered around projects, this Specialization will help you create a portfolio of work to demonstrate your new programming skills. In the capstone you will create a recommender engine similar to those used by Netflix or Amazon. Additional projects in your portfolio will include:an interactive webpage that applies filters to images, an analysis of CSV data files, an encryption program, and a predictive text generator.
Duke University has about 13,000 undergraduate and graduate students and a world-class faculty helping to expand the frontiers of knowledge. The university has a strong commitment to applying knowledge in service to society, both near its North Carolina campus and around the world.
What is the refund policy?
If you subscribed, you get a 7-day free trial during which you can cancel at no penalty. After that, we don’t give refunds, but you can cancel your subscription at any time. See our full refund policy.
Can I just enroll in a single course?
Yes! To get started, click the course card that interests you and enroll. You can enroll and complete the course to earn a shareable certificate, or you can audit it to view the course materials for free. When you subscribe to a course that is part of a Specialization, you’re automatically subscribed to the full Specialization. Visit your learner dashboard to track your progress.
Is financial aid available?
Yes, Coursera provides financial aid to learners who cannot afford the fee. Apply for it by clicking on the Financial Aid link beneath the "Enroll" button on the left. You'll be prompted to complete an application and will be notified if you are approved. You'll need to complete this step for each course in the Specialization, including the Capstone Project. Learn more.
Can I take the course for free?
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. If you only want to read and view the course content, you can audit the course for free. If you cannot afford the fee, you can apply for financial aid.
Is this course really 100% online? Do I need to attend any classes in person?
This course is completely online, so there’s no need to show up to a classroom in person. You can access your lectures, readings and assignments anytime and anywhere via the web or your mobile device.
Will I earn university credit for completing the Specialization?
This Specialization doesn't carry university credit, but some universities may choose to accept Specialization Certificates for credit. Check with your institution to learn more.
How long does it take to complete the Java Programming and Software Engineering Fundamentals?
Time to completion can vary based on your schedule, but most learners are able to complete the Specialization in 6-7 months.
How often is each course in the Specialization offered?
Each course in the Specialization is offered on a regular schedule, with sessions starting about once per month. If you don't complete a course on the first try, you can easily transfer to the next session, and your completed work and grades will carry over.
What background knowledge is necessary?
None! This Specialization is appropriate for anyone interested in learning more about computer science and software development. You should come with an open mind and motivation to learn how to solve difficult problems with code.
Do I need to take the courses in a specific order?
We recommend taking the courses in the order presented, as each subsequent course will build on material from previous courses.
Will I earn university credit for completing the Java Programming and Software Engineering Fundamentals?
Coursera courses and certificates don't carry university credit, though some universities may choose to accept Specialization Certificates for credit. Check with your institution to learn more.
What will I be able to do upon completing the Java Programming and Software Engineering Fundamentals?
You’ll be able to design, write, and test problem-focused Java programs, applying a principled approach to computational problem solving in new contexts. You’ll also be prepared to take intermediate courses in computer science and software development.
What software or equipment will I need to complete the assignments?
You will need access to a laptop or desktop computer for Java programming. For the first course, you will need to create a free account on CodePen.io. For the remaining courses, you will need to install BlueJ, a free software environment for programming in Java. A special version of BlueJ will be provided for this Specialization.
Can I view the course materials for free?
All course videos, readings, and programming resources can be accessed for free. However, in order to receive a Specialization Certificate, you must earn and purchase a Course Certificate for each course of the Specialization and the Capstone.
How is Google involved in content creation and teaching for this Specialization?
Google has contributed real-world projects and the involvement of its engineers as guest lecturers to these courses, and is interested in learning how participants may benefit from them.