Search over 27,600 MOOC courses
enter subject, university name or course name
Career Evolve is your partner in online learning and career development. Search our catalog of 28,000+ courses from over 21,000 top colleges and universities. Our partners have helped over 2 million students and continue to enroll over 30,000 students each month. Career Evolve provides you with access to free and affordable online training.

You can take courses in subjects varying from Philosophy to Computer Science or even Advanced Fiction Writing to Becoming a Physical Therapy Aide. Learn at your pace anytime and anywhere.
Career Evolve also integrates with LinkedIn to profile your achievements to potential employers.

Whether you are searching for micro learning from providers, such as Coursera, EdX or courses from leading Universities like MIT, Stanford and Peking University, Career Evolve is the answer for affordable learning and shrinking training budgets.

Invest in yourself with Career Evolve.

Discover your next learning opportunity from just one of our many Universities



Massachusetts Institute of Technology Georgetown University University of Queensland Boston University McGill University
Harvard University UC Berkeley Cornell University University of British Columbia Hong Kong University of Science and Technology

Sunday, 4 June 2017

EC2 Interview – AWS Interview – Cloud Interview – 8 Questions

If you're looking for a cloud expert, specifically someone who knows Amazon Web Services and EC2, you'll want to have a battery of questions to ask them to assess their knowledge.  As with any technical interview focus on concepts and big picture.  As the 37Signals folks like to say "hire for attitude, train for skill".  Absolutely!
1. Explain Elastic Block Storage?  What type of performance can you expect?  How do you back it up?  How do you improve performance?
EBS is a virtualized SAN or storage area network.  That means it is RAID storage to start with so it's redundant and fault tolerant.  If disks die in that RAID you don't lose data.  Great!  It is also virtualized, so you can provision and allocate storage, and attach it to your server with various API calls.  No calling the storage expert and asking him or her to run specialized commands from the hardware vendor.
Performance on EBS can exhibit variability.  That is it can go above the SLA performance level, then drop below it.  The SLA provides you with an average disk I/O rate you can expect.  This can frustrate some folks especially performance experts who expect reliable and consistent disk throughput on a server.  Traditional physically hosted servers behave that way.  Virtual AWS instances do not.
Backup EBS volumes by using the snapshot facility via API call or via a GUI interface like elasticfox.
Improve performance by using Linux software raid and striping across four volumes.
2. What is S3?  What is it used for?  Should encryption be used?
S3 stands for Simple Storage Service.  You can think of it like ftp storage, where you can move files to and from there, but not mount it like a filesystem.  AWS automatically puts your snapshots there, as well as AMIs there.  Encryption should be considered for sensitive data, as S3 is a proprietary technology developed by Amazon themselves, and as yet unproven vis-a-vis a security standpoint.
3. What is an AMI?  How do I build one?
AMI stands for Amazon Machine Image.  It is effectively a snapshot of the root filesystem.  Commodity hardware servers have a bios that points the the master boot record of the first block on a disk.  A disk image though can sit anywhere physically on a disk, so Linux can boot from an arbitrary location on the EBS storage network.
Build a new AMI by first spinning up and instance from a trusted AMI.  Then adding packages and components as required.  Be wary of putting sensitive data onto an AMI.  For instance your access credentials should be added to an instance after spinup.  With a database, mount an outside volume that holds your MySQL data after spinup as well.
4. Can I vertically scale an Amazon instance?  How?
Yes.  This is an incredible feature of AWS and cloud virtualization.  Spinup a new larger instance than the one you are currently running.  Pause that instance and detach the root ebs volume from this server and discard.  Then stop your live instance, detach its root volume.  Note the unique device ID and attach that root volume to your new server.   And the start it again.  Voila you have scaled vertically in-place!!
5. What is auto-scaling?  How does it work?
Autoscaling is a feature of AWS which allows you to configure and automatically provision and spinup new instances without the need for your intervention.  You do this by setting thresholds and metrics to monitor.  When those thresholds are crossed a new instance of your choosing will be spun up, configured, and rolled into the load balancer pool.  Voila you've scaled horizontally without any operator intervention!
6. What automation tools can I use to spinup servers?
The most obvious way is to roll-your-own scripts, and use the AWS API tools.  Such scripts could be written in bash, perl or other language or your choice.  Next option is to use a configuration management and provisioning tool like puppet or better it's successor Opscode Chef.  You might also look towards a tool like Scalr.  Lastly you can go with a managed solution such as Rightscale.
7. What is configuration management?  Why would I want to use it with cloud provisioning of resources?
Configuration management has been around for a long time in web operations and systems administration.  Yet the cultural popularity of it has been limited.  Most systems administrators configure machines as software was developed before version control - that is manually making changes on servers.  Each server can then and usually is slightly different.  Troubleshooting though is straightforward as you login to the box and operate on it directly.  Configuration management brings a large automation tool into the picture, managing servers like strings of a puppet.  This forces standardization, best practices, and reproducibility as all configs are versioned and managed.  It also introduces a new way of working which is the biggest hurdle to its adoption.
Enter the cloud, and configuration management becomes even more critical.  That's because virtual servers such as amazons EC2 instances are much less reliable than physical ones.  You absolutely need a mechanism to rebuild them as-is at any moment.  This pushes best practices like automation, reproducibility and disaster recovery into center stage.
8. Explain how you would simulate perimeter security using Amazon Web Services model?
Traditional perimeter security that we're already familiar with using firewalls and so forth is not supported in the Amazon EC2 world.  AWS supports security groups.  One can create a security group for a jump box with ssh access - only port 22 open.  From there a webserver group and database group are created.  The webserver group allows 80 and 443 from the world, but port 22 *only* from the jump box group.  Further the database group allows port 3306 from the webserver group and port 22 from the jump box group.  Add any machines to the webserver group and they can all hit the database.  No one from the world can, and no one can directly ssh to any of your boxes.
Want to further lock this configuration down?  Only allow ssh access from specific IP addresses on your network, or allow just your subnet.

Wednesday, 31 May 2017

Enterprise Architecture, Modernization, And Agile – It Can Be Done!

The Government Accountability Office (GAO) has provided recommendations to agencies such as Veterans Affairs (VA), Social Security Administration (SSA), Housing and Urban Development (HUD) and the U.S. Census Bureau (Bureau) for modernizing their legacy systems and processes. There is a common theme in the recommendations that revolves around strategic planning and risk management, which are encompassed within Enterprise Architecture.
Enterprise Architecture takes a holistic approach to planning with input from the business and understanding the technical direction needed to fulfill the business needs. Aligning the technical resources and environments to achieve the business goals helps to streamline processes, leading to more efficient business and IT operations, higher quality and reducing risks. Centralizing the decision making at the portfolio level and across the enterprise will help to align those resources to the strategic vision, which includes the business and technical needs. A centralized view also allows an organization to identify and consolidate duplicative projects, thereby reducing costs. Enterprise Architecture sets the standards by which decisions are made and products are developed.
Strategic Planning
Incorporating Agile practices within Enterprise Architecture allows organizations to remain flexible to changing needs and technology. As organizations grow, processes and solutions become more complex. Having a common architecture that is re-usable across teams reduces the complexity by ensuring that teams are using the existing infrastructure. This also lets teams focus on delivering more business value in a shorter timeframe rather than spending those resources on setting up new infrastructure.
While project teams deliver their work in short 2-4 week iterations and release products to end users on a more frequent cadence, shortening the development and long-term budget roadmaps to two years or less ensures projects are reviewed and evaluated more frequently to verify they are still timely, cost-effective and valuable. This also allows for the business and technology roadmaps to be concurrently reviewed and updated.
Enterprise Architects are a key resource to implementing Enterprise Architecture within an organization. The architects work with business stakeholders to understand the business needs and work with IT stakeholders to help guide the technical roadmap. They also help drive the organizational policy that sets the standards for decision making. Organizations may choose to implement an Enterprise Architecture team through which new requests are funneled. This is beneficial where the systems are complex and widespread across the organization. Using their understanding of the overall IT landscape and business needs, Enterprise Architects also guide project teams’ development efforts and work with them to understand their challenges. From working directly with project teams, they are also able to bring new and innovative ideas to be implemented or reused across the organization.
Risk Mitigation
Managing risk is a critical process in all projects. Implementing a standard risk-management practice across the organization ensures that risk is addressed as it arises. This includes setting clear roles and responsibilities, identifying and measuring risks, and managing the risks. Enterprise Architecture should set the guidelines by how risk is measured, managed and reported throughout the organization.
One example of risk at the team level that needs to be managed is technical debt. In a recent hearing, the GAO testified that a system release included unresolved defects that impacted performance and user experience. [1]Open defects and complex code bases that may require future refactoring lead to technical debt, which increases risk and reduces productivity. Addressing technical debt is a function within Enterprise Architecture and project teams must balance delivering value and addressing technical debt. The consequences of failing to address technical debt are not always clear, and as the debt piles up, it will be costlier to the business as productivity toward maintaining large complex code bases is reduced. Not addressing the technical debt also puts the project at risk of not aligning to the target Enterprise Architecture as it may have been reported to OMB or organizational stakeholders. This requires negotiating with the business to slow down delivering new value to ensure that high quality is being achieved. Incorporating Enterprise Architecture and Architects at the project level is one step toward ensuring the technical and business needs are properly prioritized.
Incorporating Enterprise Architecture in Agile Projects
Enterprise Architects work directly with business and project teams to understand the business and IT needs. They help drive the architectural design but also foster innovation from the project teams. In more complex systems, the Enterprise Architects collaborate with the business and project teams to provide a holistic view across initiatives. At a minimum, the Enterprise Architect should be considered a key stakeholder on projects. They provide input and guidance during planning sessions, prioritize architectural requirements, and participate in demos. Enterprise Architecture also validates the best technical fit for the proposed solution and identifies technical dependencies across projects.
As technical requirements are identified, teams react and evolve their design to meet the project needs. However, they may not have insight into how changes may impact other environments and projects, and Enterprise Architecture provides guidance for design across the organization. Providing the high-level architecture ensures that systems are effective but also lets teams react to emerging requirements and foster creativity.
Architecture needs to be addressed and accounted for. It needs to be maintained and build ahead of products features being developed. Project teams need to devote resources to building out the needed architecture while maintaining the balance in delivering business value. The architectural requirements can be broken down into smaller requirements that can be implemented incrementally. Developing the architecture incrementally also supports simple design and prevents building a complex structure or environment that may never be needed. This also includes the practice of refactoring and ensuring that code bases remain simple, manageable and on target.
Implementing Enterprise Architecture will reduce delays, costs and risks to projects, but there is a risk of creating a bottleneck through governance reviews and processes. To support faster delivery, the Enterprise Architecture should be flexible and incorporated within project teams. Enterprise Architecture also provides a holistic view to strategic planning and resources that can be aligned to meet the strategic initiatives of the organization. Deploying Enterprise Architects to work directly with project teams will ensure the architecture is understood and a balance is struck between business and IT requirements.
It is also possible to incorporate Enterprise Architecture and Agile practices. Developing the Enterprise Architecture incrementally and providing the high-level processes and requirements while leaving the emergent design and details to the project teams allows for flexibility and responses to change as is often found in Agile projects.
[1]VETERANS AFFAIRS INFORMATION TECHNOLOGY Management Attention Needed to Improve Critical System Modernizations, Consolidate Data Centers, and Retire Legacy Systems, Committee on Veterans' Affairs, House of Representatives Cong., 25 (2017) (testimony of David A. Powner, Director Information Technology Management Issues U.S. Government Accountability Office). Print.

Tuesday, 30 May 2017

Best Practices For Cloud-Based Testing

Cloud computing provides “computing” as a service, transforming IT services. Both the software and hardware landscape have rapidly changed in recent years based on the requirements of cloud infrastructure and its increasing popularity. Cloud computing can offer more agility for both software applications and hardware infrastructure.
Performance testing, load testing, tuning and monitoring in the cloud has undoubtedly generated a lot of new demands for the IT staff. When it comes to the cloud, the term “performance” refers in general to an application’s response time, throughput and resource utilization, among many others.
The single most important benefit of cloud computing is the scalability of the application: applications deployed in a cloud environment can harness the power of thousands of computers whenever needed. As a result, the performance of the application can increase significantly. This means more customer loyalty and higher revenue.
To ensure that the testing program is comprehensive, consider these seven best practices strategies:
Best Practice #1: Measure Performance from the User’s Perspective, not the Server's
Performance is not merely a question of load times and application responsiveness. The more important question is: how satisfied are my users? Performance may mean one thing to you but another thing to your user. If you are simply measuring load times, you're missing the big picture. Your users are waiting for the app to do something useful rather than waiting for pages to load with stopwatches in hand.
So how quickly can users get to useful data? To find out, you need to include client processing time in your measure of load times. It is easy to cheat on a performance test by pushing processing work from the server to the client. From the server standpoint, this makes pages appear to load more quickly. However, forcing the client to do extra processing may actually make the load time longer for users.
Best Practice #2: Make Performance Testing a Part of Agile Development
All too often, performance testing is isolated and left until the end of a development project. At that point, it's probably too late to fix issues easily. Any problems discovered are likely to significantly delay your project by throwing development into fire-fighting mode.
To avoid this problem, performance testing should be made part of the Agile development process. That way you can find problems and fix them quickly.
Specifically, testing must be integrated into development, which means performance engineering should be represented in scrum meetings on a daily basis and tasked with the responsibilities of measuring and tracking performance as the code is developed within the same development cycle. Leaving testing for the end of the development process is too late.
Best Practice #3: Make Performance Tests Realistic
Throwing thousands or even millions of clients at a server cluster may stress-test your environment, but it is not going to accurately measure how your application or site performs in a real-world scenario. There are two major issues you need to consider when setting up your testing environment.
First, the scenarios must reflect the variety of devices and client environments being used to access the system. Traffic is likely to arrive from hundreds of different types of mobile devices, web browsers and operating systems, and the test load needs to account for that.
Also, this load is far from predictable, so the test needs to be built with randomness and variability in mind, mixing up the device and client environment load on the fly. By continuously varying the environment and the type of data that is passed, the development organization faces fewer surprises down the road after the application is put into production.
Second, the simulation can't start from a zero-load situation. Many test plans start from a base, boot-up situation, then begin adding clients slowly until the desired load is reached. This simply isn't realistic and provides the testing engineer an inaccurate picture of system load. As applications are updated and rolled out, the systems they're running on will already be under load. That load may change over time, but it won't fall to zero and slowly build back up.
Best Practice #4: Develop Performance Tests Specifically for Mobile Applications
The increasing adoption of smart phones, tablets and other mobile devices has fueled the growth of mobile applications in recent years. Mobile devices have become the primary medium of interaction for consumers as well as businesses worldwide, and mobile applications are driving these interactions. To a large extent, mobile applications have put business operations in the hands of the consumers, and they are literally running businesses and influencing business decisions. However, the big question is: what makes a mobile application compelling enough to influence consumer behaviors and make them engage with your brand and products? Of course, a strong mobile application development strategy is the foundation of any successful mobile application, but there’s one key component in its development that ensures your mobile application meets customer expectations and business goals – the mobile application testing strategy. Mobile application testing is the quality test your mobile apps have to pass before they reach their target mobile devices or app stores and become available to public.
Best Practice #5: Develop Test Environment Setup Procedures
When the cache and cookies are not clean while recording a user scenario, the web browser uses cached data and cookies to process client requests instead of sending data to and receiving responses from the server. With that said, it is very important to clear browser cache and cookies before recording traffic.
Start recording a new scenario from the web browser’s start. If you start recording a scenario after you connect to the tested web server and open a few web pages, the playback of the scenario will fail. This will happen because the recorded traffic will not reproduce the authentication procedure, and the tested web server will ignore the simulated requests.
Parameterize scenarios to simulate more realistic loads on the server. Scenarios can be parameterized by replacing recorded parameters in the HTTP requests with variable values, which lets virtual users send user-specific data to the server. This lets you add dynamic behaviors to your scenarios as if they were run by a group of unique human users. Note: Before you parameterize a scenario, carefully explore its HTTP requests and HTTP responses to better understand what data is being transferred to and received from the server.
Verify user scenarios. Before creating tests on the basis of a recorded scenario, make sure that the scenario is executed successfully for one virtual user. This can help you identify bottlenecks of the scenario and eliminate problems that are unrelated to the number of virtual users and additional testing conditions.
Best Practice #6: Accurately Monitor and Analyze Test Results
Add validation logic to the script to make sure the results you get under load are consistent, valid and expected. You can validate that a request has completed correctly based on many things, including page (HTML) content, content size, page title and end page time, among others. Make sure you test the application in a production-like environment, including factors like Secure Sockets Layer (SSL), single sign-on (SSO), load balancing and firewalls. This is essential for simulating accurate end-to-end behavior.
Avoid the temptation to extrapolate results – one server with 100 users may not run like two servers with 200 users. Test the equivalent of your full production stack. Collect statistics from your back-end environment, including web, application and database servers, to diagnose load impact on all applications tiers. Analyze server-side statistics side-by-side with client-side statistics and look for any discrepancies that might indicate a problem. To communicate test results effectively, generate reports for each team member in their preferred format.
Best Practice #7: Schedule Test Scenarios Periodically
Test often. After completing the initial load test, use the results as a baseline and look for regression in performance – a seemingly insignificant change can cause unexpected performance issues. The easiest way to do this is through automation. It’s important to check all of the application parameters, including the number of connections, response time, transaction times and throughput. There are many reasons why an application can break under load and the actual culprit is not always easy to predict.
In conclusion, while the above list is not intended to be exhaustive of all cloud-testing activities, it does serve as a viable starting point for all IT staff personnel considering how to successfully test real-world applications and services deployed to the cloud.

Monday, 29 May 2017

Essential Project Management skills

Some people may wonder what skills a Project Manager would need to successfully run a project. What a person considers “successful” may vary, of course. Perhaps being able to simply stay within the agreed upon budget is considered a successful project. Maybe delivering all of the requested deliverables on time is considered successful. Maybe being able to complete most of the deliverables in a timely manner is considered successful. Or perhaps all planned or requested deliverables were not completed, but the business and product owners on the project are pleased with the work done and have confirmed that what was completed has added business value. Whatever the means to measuring a successful project may be, one thing is for certain: there are many skills a Project Manager must have in order to achieve some the level of success.
There are many skills a Project Manager may consider essential, but four key skills are:
  1. Communicating
  2. Problem Solving
  3. Prioritizing
  4. Recording Project Metrics
Communication
Project Managers (PMs) are often the primary point of contact for the client, which makes effective communication very important. It is the Project Manager’s job to listen to the client’s needs, gather important information, communicate those needs to the team so they are clear about what tasks need to be worked on, and plan accordingly. For the client, the PM will want to use effective communication skills, which include following up with the client when issues are noted, providing updates on progress, and periodically ensuring that the team’s work is in line with the client’s vision by discussing the client’s wants and needs with the client directly.
In addition to client communication, the Project Manager must also communicate well with his or her team. Clear communication between the PM and his or her team is the most effective way to ensure that the team is moving in the right direction.
Some communication tips on a team level would include:
  • Being clear about the expected end result or goal: if the team has a clear picture of what the main goal is and what the end result should be, it will help them prioritize their tasks.
  • Communicating deadlines frequently: it may be easy to forget deadlines when a team member has multiple deadlines to remember. Reminding the team of important deadlines that may be either fast approaching or far in the future is a helpful way to maintain a strong idea of what is important at the moment.
  • Communicating any changes that may affect the team’s progress: by keeping the team in the loop of any changes or possible changes that could affect the team’s work load and scope, the Project Manager can avoid “blind side” situations, which keeps the team at ease and running smoothly.
Problem Solving
For every Project Manager, problem solving is one of the many skills required to be successful. Problems will be filtered through the Project Manager from both the client and the team. It is also the Project Manager’s job to identify problems that may not necessarily be brought to their attention. Once a problem arises, the Project Manager must be able to ask all the right questions and gather the right information before analyzing the best way to resolve an issue. Once the PM has gathered all the necessary information, they will need to come up with the best possible solution for that problem. For many Project Managers, problem solving may be their least favorite part of the job, but it remains one of the most important skills to have. Knowing how to identify problems, resolve them in a timely manner, and minimize any damage the problem may cause is a skill that will be used throughout a PM’s career.
Some problem-solving tips would include:
  • Defining the problem
  • Determining the root causes of the problem
  • Brainstorming ideas to solve the problem
  • Selecting the best solution to the problem
  • Taking action on that solution to solve the problem
Prioritizing
After receiving the goals from the client, sorting through the deadlines and possible changes, and listening to the problems and concerns from the client and team members, the project manager will need to prioritize, prioritize, and prioritize again! This will be an ongoing task and test of their skills throughout the project’s life cycle. The PM will need to know how to prioritize the work that needs to be done.
Some prioritization questions to ask would include:
  • What is the end goal and what is the quickest way to get there?
  • Which tasks need to be worked on first?
  • What task is most important to the client as well as easiest to accomplish?
  • Which task is the hardest to accomplish – and will require giving the team more time to work out any issues that may arise while working on it?
Work cannot be managed without prioritization. The tasks that the other teams depend on or have deadlines need to be moved to the top of the list to avoid slowing down the progress of the entire project, program, or another project.
Problems identified in the project also need to be prioritized. Effectively prioritizing and reprioritizing the tasks, goals, and problems will help the team get the job done with fewer hiccups and ultimately result in a happy client.
Recording Project Metrics
Another essential skill that a PM benefits from is recording project metrics.
There are many measures that a PM may be interested in tracking, but time, cost, quality, progress related to the project, and accomplishment of program goals are generally the most helpful to project success and client happiness. Before measuring project successes, it’s necessary to identify what measurements are important to the project first. Looking back at reports from other projects or past efforts that team members or clients found successful is a good place to start.
Creating reports that track how well the team is completing assigned work will help the team plan tasks and give the client immediate insight into what the contract team is doing and how well they are accomplishing their goals. An example of this project tracking and its benefits can be seen in the Agile story point tracking. Under Agile, a team can keep track of the number of story points completed in each sprint (2-3 week development cycles); this is known as the team’s “velocity.” Tracking the team’s velocity helps the team determine the average number of story points they can achieve per sprint, allowing them to plan sprints more accurately and effectively. The velocity provides good base measurements of the team’s performance and productivity.   
Jack of all Trades
There are many skills that can help a Project Manager run a successful project. Some will be standard and seen often; others will be relative to a project or even the PM’s style of managing. The skills listed above are broad skills that will help in managing any project. It is good for a project manager to assess their strengths and weaknesses and plan their project accordingly. A variety of skills and dedication to honing those to a project will only improve the client’s experience with the project.

Sunday, 28 May 2017

Online Learning As A Source Of Low Cost Training

Most organizations are concerned with developing staff skills and keeping skills current with evolving technologies. Traditionally, training has been expensive, whether it is outsourced or done in-house. According to an article from Forbes Magazine, corporations in the U.S. spent over $70 billion on training in 2013. The article also mentions the increasing use of online training sources by companies. A survey conducted by Training Magazine in 2014 ranked the top 125 corporations for training and found that they spent nearly 6% of payroll on training. It is clear that these organizations devote a significant amount of resources on training and expect a return on their investment.
Given the costs of training, organizations should be interested in ways to lower these costs while maintaining or increasing the effectiveness of their efforts. Per the OPM Training and Development Policy Wiki, it is evident that the Federal Government is not exempt from this concern. As noted on this site, one approach to lower costs is to take advantage of the increasing availability of high quality online learning opportunities, many of which are free or low-cost.
The Internet has allowed for the emergence of various online learning options. From the beginning, the Internet has been a source of information; users have used search engines to find answers for their specific questions for years. However, recently, new formats for teaching have emerged. These formats are teaching focused, rather than just platforms that provide information. Examples of these include webinars and videos, self-paced online courses, and Massive Open Online Courses (MOOCs). Each of these formats has different advantages, but they all provide the opportunity to acquire knowledge and learn new skills.
It is useful to review some of the attributes of different types of online learning:
  1. Whether a course is live or not. Live courses allow for student participation in real time and have a fixed schedule, but are hard for those with busy schedules to manage. Examples of live courses include live webinars and MOOCs. Non-live courses are self-paced and give students maximum flexibility in scheduling, but may lead to procrastination in completing the coursework and less engagement in the subject matter.
  2. Whether a course is interactive. Interactive courses include testing and hands-on exercises that provide feedback to students, so that they can gauge how they are doing.
  3. Whether they offer certificates of completion. These provide proof of participation.
As noted in a recent article from the Chronicle of Higher Education, the growth of MOOCs over the past few years now means that individuals have a wealth of opportunities to take free or low cost classes on just about every subject, taught by instructors from well-known universities. Some of these courses offer certificates of completion and a few are beginning to offer college credits. Organizations can benefit greatly by encouraging their employees to enroll in and complete these courses by providing some additional incentives and opportunities to do so.
MOOC sources include edXCoursera, and Udacity. These sites offer verified certificates for a fee, but they also allow students to take the courses for free without a verified certificate. It should be noted that these fees are relatively low when compared to the cost of traditional classroom training. However, unlike traditional classes, MOOCs can have thousands of enrolled students, which makes it impossible for instructors to answer all questions or communicate with more than a small fraction of students. MOOCs make up for this by establishing monitored forums for students to post questions and communicate with each other and by using teaching assistants to monitor the forums.
Other sources of free online training include W3C SchoolsCodeacademyKhan AcademyMIT Open Courseware, and Microsoft Virtual Academy. These courses are mostly self-paced and provide varying degrees of feedback to students. Many also offer unverified certificates of completion. Taken together, these sites cover a wide variety of subjects, many of which would be of interest to organizations looking to develop specific skills in their employees, and many others which students may find personally fulfilling.
How can organizations take advantage of these training opportunities to supplement or replace their current training programs? At a minimum, they can simply publicize the availability of courses and provide some guidance as to what subject areas are of interest to the organization. However, many employees may be reluctant to dedicate the time to taking online courses after hours. Therefore, organizations may consider creating a formal policy to encourage or even require employees to take external online training. In either case, there are many beneficial and successful ways to support employees in taking online learning opportunities. These include offering monetary incentives, reimbursing costs, encouraging group learning within the organization, and providing the time and resources for their employees to participate.
Monetary incentives are a straightforward means to encourage enrolling in and completing courses, but they do not necessarily need to be extravagant. People are often interested in taking online courses, but it can be hard to commit the time. A small reward is often significant enough to convince employees to give up some of their leisure time. An organization can also provide time during working hours, in addition to or instead of a monetary reward. Similarly, employers can reimburse all course related expenses such as certificate fees and supplementary texts. Finally, organizations can offer other resources, such as a virtual server or software, in which students can practice their new skills. These steps can be justified when the training is directly related to the organization’s line of business with the goal of supporting clients in a more effective way.
A complimentary approach could also be taken to encourage completion of online training, such as having employees take the courses as a group. This can both foster friendly competition and promote discussion/mutual support between participants. Many people will find taking a course in a group more fun and engaging than taking it alone. To further complement the training, organizations should assign mentors who are already subject matter experts in the field to answer questions or to talk about their own experience in the field.
Organizations do not have to spend a lot of money to keep their employees up-to-date in key skills or to expand their knowledge. Employees can also enrich themselves by taking other courses that interest them and gain skills proactively in a low-cost manner. The affordable aspect of online learning allows students to feel free to experiment and learn about subjects outside their current role. While online training cannot completely replace intensive, hands-on instruction, it can certainly provide a wide variety of basic knowledge to get employees started in acquiring new capabilities.

Saturday, 27 May 2017

Managing remote teams successfully

Organizations all over the world are coming to the realization that remote teams are becoming more common across all industries. With technology that can help support communication and streamline activities, remote teams can be effective no matter where or when they are.
Phil Montero’s book The Anywhere Office states, “72% of U.S. employees say that flexible work arrangements would cause them to choose one job over another”. An efficient distributed work program can also enable companies to hire talent in remote locations that are unwilling to relocate to the areas where the company already has facilities. Similarly, organizations can retain key individuals by allowing them to transfer away from the central office while remaining employed.
A key stat provided by the Global Knowledge group found that 90% of issues that remote teams have are interpersonal issues. The other 10% of issues were from the utilized technology. Looking at these two numbers, it makes a lot of sense to start off by addressing your likely people issues.
Step 1: A remote work environment will have people working from different geographic locations and time zones. It is important to involve the entire team while designing a communication plan. Construct the plans that work well for the whole team. For example, set the periodic bridge calls or webinars at the best possible time for all the team members to attend. You may not want the key members to fall asleep while making important decisions. You need to figure out the communication channels and the plan. This is developed in collaboration with your team so that team members can feel part of this critical step.  As stated in GovernmentCIO Magazine’s previous article “Essential Element of a Communication Plan” you need to address goals and objectives, the target audience, key messages, format, communication channels, frequency and timing, and roles and responsibilities.
Step 2:  The organization chart is essential. The team needs to understand the chain of command which ties into a lot of aspects of the project. The manager needs to ensure everyone on the team is clear on the organizational chart and does not have any objections to it. A strong organizational structure allows there to be minimal micro-managing yet clear communication across the entire team. 
To develop a strong organizational chart, you must have all team member roles and responsibilities, job titles, and understand the reporting structure.
Step 3:  Ensuring that you have the right tools will determine if your project is successful or fails on remote teams. As Tech.no stated in their article, tools allow for collaboration when a person halfway around the world is sleeping. Steps 1 and 2 are critical, but this action ties those together to allow a team to function as a unit. Multiple categories you need to consider include instant messaging, Project Management, Team Collaboration, Phone Calls, Video Calls and Screen Sharing among others. It is key for the organization to have a set of tools and processes in place before the project kicking off. Most projects need a lot of direction and management time up front to ensure activities are kicking off right. The tool set that is selected will allow management and team members to get a clearer picture of the project.
Step 4: Having an organization chart, communication plan, and tools in place are useless unless they are understood and utilized. The project manager must ensure that proper training is provided at the onset of the project to teach and inform all team members. 
A remote team is ‘Paperless’ which means, all forms of communication including deliverables, edits, feedback and so on will be through the tools and processes established by the team. Allocated time for training is necessary once employees understand and have access to the tools. Allow for some dedicated simulation training time; this will enable your employees to make mistakes and learn before the project starts.
Being accessible is crucial for any remote team. Most remote teams don't hand out desktops as devices instead team members use laptops, iPads, or their cell phones to get work completed. It is essential for team members to always be engaged no matter where they are.  Finally, allow employees to practice with their devices and let them make mistakes when there are no real deadlines in place.
The entire goal of step 4 is to provide the team with a sense of security that they not only have what they need but also know how to use it. This is one of those steps that help build team camaraderie as well. When a team fails and succeeds as a unit, it builds trust. Getting a team to ameliorate and build a foundation requires a lot of small building blocks. Training will allow your team to communicate and start down that path.
Closing Thoughts
Being a geographically dispersed team does not mean you cannot establish strong relationships, have effective communication, deliver on time and provide excellent quality. Building a great remote team is similar to building any team. You need to develop strong processes, utilize technology; foster communication and most importantly build trust. Managers already communicate with their teams but on the remote team, the manager needs to effectively communicate. This is the form that the manager will use to discover any misunderstandings and resolve them early before they become a distraction.

Wednesday, 24 May 2017

Closing the Wage Gap: 5 Salary Negotiation Tips Every Woman Should Use

Closing the Wage Gap: 5 Salary Negotiation Tips Every Woman Should Use


Nela Richardson, Redfin’s chief economist, shares advice for women on salary negotiation  
https://www.redfin.com/ 

Redfin's chief economist, Nela Richardson, has provided a guest blog for CareerEvolve.com.  In her blog post she offers us 5 Salary Negotiation Tips that all woman should use.  Her statement regarding negotiating for benefits beyond salary is a great reminder of work life balance and that sometimes having more vacation days or flexible hours is worth more than cash.  

I encourage you to read the blog post from Nela Richardson and comment on what negotiation tips you would also recommend.


It’s hard to know how much you should ask for before taking a job if you don’t know how much you’re worth to a company. You could sell yourself short if you walk into a salary negotiation unprepared and accept an offer for less than what someone with your experience is earning at other companies. Many women are still getting paid less than their male counterparts across all professions. According to the National Women’s Law Center, women would lose $418,800 over the course of a 40-year career based on today’s wage gap. But it’s not a hopeless situation. One way you can help close that gap is by negotiating for what you are worth, rather than just accepting an offer right off the bat.
Redfin chief economist Nela Richardson didn’t think she would ever be in that situation while working as a government economist, so she was caught by surprise when she learned a male coworker in the same position was getting paid over $60,000 more than she was!
That was a light-bulb moment for Nela and it changed the course of her career. So, what did she do? She made a plan and left her underpaid job to find one that paid her the amount she was worth. You have the most leverage when a company wants you, so always negotiate before you take a job.
Here are some tips from Nela for women about to head to the negotiation table:

Network

Knowledge is power. You should network to make connections with people in your field to get more information about the positions you are applying for. Go to events. Ask what companies are paying for certain positions. Networking with people in your industry will help you understand what a competitive wage is for someone in your position. You need to know what your market worth is in order to have the greatest negotiating power

Research It

In addition to  going to networking events, take your time to research different companies and the salaries they are offering. Use sites like Glassdoor and PayScale to find out what positions are worth in your area. You can use this information as leverage when heading into a salary negotiation meeting.

Be Realistic (But Don’t Sell Yourself Short)

You don’t want to ask for double what a company is offering, but you also shouldn’t settle for the bare minimum. There is always wiggle room. Ask for five to 10 percent more than the industry standard, but be prepared to explain WHY you are worth that much more. Maybe you have additional experience that would benefit the company, or you have a connection that makes you a more appealing candidate. Your company could regret hiring you if you ask for a lot more money, but can’t deliver on your promises. At the same time, a good company will value an employee who knows what they are worth, especially if they can deliver on the promises made during salary negotiations.

If the Employer Can’t Give You What You Want…

You have the MOST leverage in negotiations. There is a chance a company won’t be able to give you any more than what they are offering, but they might be able to give you a few extra vacation days or let you work from home once a week..There are things that can be important to you as a prospective employee other than money, but just make sure you get those other agreed-upon benefits in writing.
If the hiring manager says they can’t pay you what you’re asking, ask what you would need to do in the role to reach your desired salary. You could also request a guaranteed raise percentage annually or within a certain amount of time. Good employers will respect your drive.

Talk Career Ladder

A good company will value an employee’s vision for her personal career goals. Be sure to ask about the upward mobility in a company so you can envision what your future would look like if you decide to work for that company. You might not want to take the position if there isn’t much room to grow. An employer will appreciate a driven candidate who wants to turn their position into a career.
Let us know if these tips work for you!

Note:  the original post can be found at - https://www.redfin.com/blog/2017/05/closing-the-wage-gap-5-salary-negotiation-tips-every-woman-should-use.html

Saturday, 13 May 2017

9 Legit Master’s Degrees You Can Now Earn Completely Online

Over the past few years, MOOC (Massive Open Online Course) providers have focused on creating their own credentials. Some that you might have heard of include Udacity’s Nanodegrees or Coursera’s Specializations.
Another trend that has been slowly gaining momentum is the one in which MOOCs sometimes count toward official academic credit. Some credentials, like edX’s MicroMasters (which are offered by fourteen universities), can be used to earn a semester’s worth of academic credits towards an on-campus master’s degree. A detailed list of MOOCs that can be taken for credit can be found on Class Central here.

But the trend I want to talk about here is master’s degrees that you can take online, and which are offered by MOOC providers. The first MOOC-based degree was announced back in 2013. It took two years for the next one to be announced in 2015. But in the last year or so, seven more completely online master’s degrees have been announced by MOOC providers. If fact, Coursera plans to offer 20 such degrees by the end of 2019.
The advantage of MOOC-based master’s degrees is that many courses which are part of the degree are free to take. So you can preview a part of the content before committing to anything. Also, all of them are based on the pay as you go model; you only pay for the courses that you are currently taking. Some have the option to earn partial academic credits.
One thing to be aware is that each degree has its own application process (and deadlines), as well as minimum requirements like a bachelor’s degree or minimum work experience. Many require you to submit different standardized test scores, like GRE, GMAT, or TOEFL.
Without further delay, here are nine completely online master’s degrees that have been announced so far.

1.  Georgia Tech and Udacity: Online Master of Science in Computer Science

Announced Back in 2013, Udacity and Georgia Tech’s completely online Masters in Computer Science was the first degree announced by a MOOC provider. It was dubbed “OMSCS.” The entire degree was going to cost less than $7,000.
The tuition fee has since then increased from $402 per three-credit hour to $510.
Zvi Galil, Dean of Georgia Tech’s College of Computing, speaking to OMSCS students at an event (which I got to attend) organized by Udacity at SXSWedu.
Zvi Galil, Dean of Georgia Tech’s College of Computing, speaking to OMSCS students at an event (which I got to attend) organized by Udacity at SXSWedu.
Things were really slow at the beginning. It took two years before the first batch of eighteen students graduated in December 2015. A year later, in December 2016, around 200 students had graduated.
But the OMSCS is gaining momentum. There are now over 4,500 students enrolled in the spring 2017 semester.
You can find more details here: https://www.omscs.gatech.edu/

2. Georgia Tech and edX: Online Master of Science in Analytics

Building on the success of its OMSCS program, Georgia Tech has announced a second, similar program: Online Masters of Science In Analytics (OMS Analytics). According to Georgia Tech, the OMS Analytics will cost less than $10,000 and will be offered in August this year.
Three of Georgia Tech’s OMS Analytics foundational courses will form the Analytics: Essential Tools and Methods MicroMasters credential program on edx.org. It consists of three free online courses: Introduction to Analytics ModelingComputing for Data Analysis, and Data Analytics in Business. The first of these courses starts on May 14 2017.
The tuition fee will be $825 per three-credit hour course, and an additional $301 per academic term of enrollment. The first cohort will start in August 2017 and will be limited to 250 students. Applications opened on January 12, 2017.

3. University of Illinois and Coursera: Master of Business Administration (iMBA)

University of Illinois at Urbana–Champaign became Coursera’s first partner to announce a fully-fledged business degree with them. Announced back in 2015, the iMBA (as it’s called) costs around $22,000 and is designed to “help you achieve deep mastery of business strategy and leadership.”
Coursera’s degrees are built on top of Specializations, which are sequences of courses that amount to micro-credentials. These Specializations are open to anyone in the world, and as far I can tell the individual courses of these Specializations are free to audit.
According to Coursera, the iMBA program is heavily interactive, with live global classrooms, team projects, and personal contact with top professors.
You can find more details here: https://www.coursera.org/university-programs/imba

4. University of Illinois and Coursera: Master of Computer Science in Data Science (MCS-DS)

According to U.S. News & World Report, the University of Illinois is in the top five schools for Computer Science. So it’s a good thing that they launched a MS CS in Data Science.
MCS-DS costs less than $20k. Here is what the information page says about the program:
The MCS-DS builds expertise in four core areas of computer science: data visualization, machine learning, data mining and cloud computing, in addition to building valuable skill sets in statistics and information science with courses taught in collaboration with the University’s Statistics Department and iSchool (ranked #1 among Library and Information Studies Schools.)
Similar to iMBA, the MCS-DS consists of Specializations that are available for anyone to signup for everyone. Two of these Specializations, those on Data Visualization andCloud Computing, are already available.

5. University of Illinois and Coursera: Master of Science in Accounting (iMSA)

According to U.S. News & World Report, the University of Illinois’s on-campus accounting program (both undergrad and master’s degrees) is a top three program. The cost of the online program is an estimated $27.2k, making it the most expensive master’s degree offered by the University of Illinois on Coursera.
This iMSA was announced just last month, and applications for the first cohort are open now.
You can find more details here: https://www.coursera.org/university-programs/imsa

6. HEC Paris and Coursera: Master’s in Innovation and Entrepreneurship (OMIE)


HEC Paris became the second university to offer a masters program on Coursera. HEC Paris is one of Europe’s highest ranked business schools (#2 on the Financial Times’ rankings).
The online Master’s in Innovation and Entrepreneurship (OMIE), announced last month, costs €20,000. OMIE also includes a certificate program, which costs €5,000. The Certificate in Innovation Management and Entrepreneurship does not have an application process and is open to everyone. Once completed, it can be applied towards the full degree.

7. Deakin University and FutureLearn: Cyber Security

FutureLearn is a UK-based MOOC provider backed by The Open University. Last year FutureLearn announced that it will launch six post-graduate degrees in partnership with Australia’s Deakin University.
The certifications awarded by FutureLearn and Deakin University are: a graduate certificate, a graduate diploma, and a master’s degree. Of the five announced so far, three of them are available as a master’s degree.
Each degree will consist of up to sixteen FutureLearn Programs, which are similar to a Coursera Specialization or a Udacity Nanodegree. Most of the courses that are part of these degrees will have a fee attached, but there will be a few “taster courses” for each degree that are free.
The Cyber Security master’s degree will cost around £30k. Students will “gain knowledge from system security and digital forensics to analytics and organisational security.”

8. Deakin University and FutureLearn: Professional Practice: Information Technology

Here is a description of the degree on FutureLearn:
This degree recognises the discipline-based knowledge and skills developed by professionals in the workplace. This is coupled with employability skills that are validated and endorsed through a final holistic assessment. Upon the completion of this degree, graduates will possess advanced skills and complex knowledge in the discipline areas they have selected.
FutureLearn’s degrees haven’t launched yet, and complete details are still lacking. The pricing for this degree will be around £10.7k.

9. Deakin University and FutureLearn: Development and Humanitarian Action

This master’s degree has been developed in association with Save the Children. Here is a description of the degree on FutureLearn:
These degrees – developed in association with Save the Children – build a unique, global platform where development & humanitarian practitioners and academics can share knowledge and experience, with a focus on improving leadership, preparedness and response capacities to national and international emergencies and developmental issues.
This master’s degree consists of sixteen programs and costs around £24k.
Find Enroll Learnbanner

Featured

Starting a Consulting 

Practice

Starting a Consulting Practice

Find out how you can earn income by sharing your training or knowledge with others.
PMP ® Certification Prep 1

PMP ® Certification Prep 1

Begin a well-paying career as a project manager by preparing to take--and pass--the PMP® certification exam.
How to Get Started in Game Development

How to Get Started in Game Development

Take steps toward a new career in game development by building a foundation to design games in a wide variety of genres for different audiences and platforms.
Accounting Fundamentals

Accounting Fundamentals

Gain a marketable new skill by learning the basics of double-entry bookkeeping, financial reporting, and more.
Conversational Japanese

Conversational Japanese

Whether you want to learn conversational Japanese for travel or just for fun, you'll find this course makes it easy and enjoyable for beginners to master the essentials of the Japanese language.
Introduction to QuickBooks 2015

Introduction to QuickBooks 2015

Learn how to quickly and efficiently gain control over the financial aspects of your business using this powerful software program.

Student Profiles