Hi,

I am working on variant calling on fungal genomes. I have Illumina HiSeq reads. I am new to this and am following this workflow

Step 1:	QC of raw reads performed using FastQC tool

Step 2:	Preprocessing of raw reads performed using Trimmomatic-v0.36 tool

Step 3:	QC of clean reads performed using FastQC tool

Step 4:	Alignment to reference genome using bowtie2-v2.2.6 tool

Step 5:	SAM to BAM (alignment files) conversion using samtools-v1.3.1

Step 6:	Remove duplicates using sambamba-0.6.6 tool

Step 7:	coordinate sorting of bam files with samtools

Step 8:     Variant calling performed using samtools/bcftools

Step 9:     variant filtering with bcftools

In this post https://www.biostars.org/p/8237/ and other variant calling related resources I found 2 additional steps before variant calling i.e. **local realignment** and **base quality recalibration**. 

1. Are these steps essential?
2. I found that these option are not available in samtools but in GATK. How can I perform these steps for my data?

Local realignment is not needed anymore with GATK latest pipeline using HaplotypeCaller. You may just forget it as it's utility is only in calling SNPs nearby Indels, and there is no definite guideline how much it helps when using with tools other than GATK.

https://software.broadinstitute.org/gatk/blog?id=7847

Base quality re-calibration can still give you some advantages, as it claims to rectify the base call probabilities, which are used by almost all of the variant callers to give more confidence to the called variant.  It is easy to do, provided you have GATK pipeline set-up at your end. 

http://gatkforums.broadinstitute.org/gatk/discussion/44/base-quality-score-recalibration-bqsr

(TL;DR: See "Creating a recalibrated BAM" in above doc)

PS: Your reads must have RG-tags in bam-files to use most of the GATK protocols/tools. You may search my earlier post regarding that. 
PPS: If it looks too troublesome, you may ignore it too as this not an obligatory step.