Show the page title on blog page

The call for the page title is outside the loop so you need to use this function instead:

<?php echo get_the_title(); ?> 

Here is the updated code:

<?php get_header(); ?>
<section id="primary-content" class="col-md-9">

    <?php echo get_the_title(); ?> 

    <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

        <div class="post">
            <h2><a href="https://wordpress.stackexchange.com/questions/146051/<?php the_permalink(); ?>"><?php the_title();?></a></h2>
            <div class="byline">by <?php the_author_posts_link(); ?> on <a href="https://wordpress.stackexchange.com/questions/146051/<?php the_permalink(); ?>"><?php the_time( 'l F d, Y'); ?></a></div>
            <?php the_content('Read More...'); ?>
        </div>
    <?php endwhile; else: ?>
        <p><?php _e('No posts were found. Sorry!'); ?></p>
    <?php endif; ?>

    <div class="navi">
        <div class="right">
        <?php previous_posts_link('Previous'); ?> / <?php
          next_posts_link('Next'); ?>
      </div>
    </div>

</section>

<?php get_sidebar(); ?>

<?php get_footer(); ?>