Bharath Chandrashekar
seal-mask

Bharath Chandrashekar

Techdegree Graduate

Bengaluru, India

12,055

Total Points

Points are earned whenever you take an important action on Treehouse.
Learn more about when and how points are earned.

Skills & Experience

  • Company

    Tektronix India Pvt. Ltd.

  • Job Title

    Software design engineer 3 - iOS

  • Spoken Languages

    • English
    • Kannada
    • Hindi
  • Looking for work

    Yes

104 Achievements

  • MVC
  • Notifications
  • KVC and KVO
  • Singletons
  • Two-stage Object Creation
  • What Are Design Patterns?
  • Intro to Unit Testing 2
  • Introduction to Unit Testing
  • Saving a Selfie
  • Adding Metadata to Photos
  • GPU Based Approach
  • Image Processing
  • Playing with Filters
  • Pinching, Panning and Zooming
  • Browsing An Album
  • Taking Photos
  • Deleting and Updating Data
  • Fetching Data Using Fetch Requests
  • Inserting and Saving Data Using a Context
  • Understanding the Core Data Stack
  • Adding Reviews and a Map
  • Retrieving Restaurant Details Using Operations
  • Simplifying Networking Code
  • Obtaining a Location Fix
  • Authorization with Third Party Libraries
  • Downloading Album Artwork
  • Requesting Real Data
  • Enhancing the iTunes Endpoint
  • URLs and Parameter Encoding
  • Building the User Interface
  • Modeling iTunes Search Results
  • Decoupling the Data Source
  • Sorting Contacts Into Sections
  • Static Table Views for Detail Interfaces
  • Displaying Contact Data
  • A High Level Overview
  • Error Handling
  • Dynamic Keys and Inheritance
  • Parsing Different JSON Structures
  • Parsing to Non-Primitive Types
  • An Overview of Codable
  • Refactoring Using Codable
  • Dark Sky API Client
  • Downloading JSON Data Asynchronously
  • Fetching Data From the Web
  • Modeling Forecast Data
  • Error Handling and Memory Management
  • Building Standard Library Functions
  • Closure Expressions
  • First Class Functions
  • Generics and Protocols
  • Generic Types
  • Generic Functions, Parameters and Constraints
  • Writing Great Swift
  • Extensions and Protocols
  • Value Semantics, Type Methods and Inheritance
  • Adding Sound Effects
  • Personalizing The Story
  • Refactoring Our Code
  • Creating the User Interface Programmatically
  • Creating a Story
  • Navigating Through An Adventure
  • Using the Delegate Pattern in iOS
  • The Delegate Pattern
  • Access Control
  • Memory Management in Swift
  • Object Initialization
  • Properties
  • Displaying Additional Views
  • Using the Vending Machine
  • Loading Data From a Resource
  • Modeling an Interface
  • Error Handling
  • Creating Flexible Objects Using Protocols
  • Protocol Basics
  • Improving Our User Interface
  • Running Apps on a Device
  • Structs As Data Models
  • View Controllers and Views
  • Getting Started with iOS Development
  • Objects and Optionals
  • Introduction to Optionals
  • Introduction to Enumerations
  • Differentiating Between Objects
  • Class Inheritance
  • Classes in Swift
  • Complex Data Structures
  • Adding Power to Functions
  • Functions in Swift
  • Control Flow With Conditional Statements
  • Control Flow With Loops
  • Dictionaries in Swift
  • Introduction to Collections
  • Swift Operators
  • Swift Types
  • An Introduction to Swift Programming
  • Swift Parameters and Tuples
  • Swift Functions
  • Control Flow
  • Collections
  • Operators
  • Types
  • Variables and Constants
  • Newbie