i
TCS
Filter interviews by
I applied via Campus Placement and was interviewed in Aug 2022. There were 2 interview rounds.
By Tcs hiring process
Some dsa questions
Like based on kadane algorithm
And some implementations based questions
posted on 9 Jan 2024
I applied via Recruitment Consulltant and was interviewed in Dec 2023. There were 3 interview rounds.
Higher Order and Lambda Functions in Kotlin
Higher order functions are functions that take other functions as parameters or return functions
Lambda functions are anonymous functions that can be used as arguments or return values in higher order functions
They provide a concise way to write code and enable functional programming in Kotlin
Multi Modular Project structure is an architectural approach that divides an application into multiple modules for better organization and scalability.
Divide the application into separate modules based on functionality or features.
Each module should have its own set of code, resources, and dependencies.
Modules can communicate with each other through defined interfaces or APIs.
Modularization helps in code reusability, e...
Null pointer prevention and type safety in Kotlin
Kotlin uses nullable and non-nullable types to prevent null pointer exceptions
The safe call operator '?' can be used to safely access nullable variables
The '!!' operator can be used to explicitly throw a null pointer exception
Kotlin's type system ensures type safety by checking types at compile-time
I applied via Referral and was interviewed in Jun 2024. There were 3 interview rounds.
Encryption and decryption in Swift involves using cryptographic algorithms to encode and decode data securely.
Use common encryption algorithms like AES or RSA for encryption.
Implement encryption using libraries like CommonCrypto or CryptoSwift.
Store encryption keys securely and use secure protocols for data transmission.
Example: Encrypting a string using AES encryption in Swift.
Keychain access in Swift allows secure storage of sensitive information like passwords, tokens, etc.
Use Keychain Services API to securely store and retrieve sensitive data.
Keychain items are stored securely in the device's keychain and are encrypted.
Access keychain items using unique identifiers called keys.
Use Keychain Swift library for easier implementation.
Classes are reference types, while structs are value types in Swift.
Classes are reference types, meaning they point to the same instance in memory when assigned to a new variable.
Structs are value types, meaning they create a new copy when assigned to a new variable.
Use classes for complex data structures or when you need inheritance, use structs for simple data types or when you want value semantics.
Example: class Per...
Grand Central Dispatch (GCD) is a technology in Swift for managing concurrent operations.
GCD allows developers to perform tasks concurrently without having to manage threads manually.
It provides a high-level API for managing tasks and executing them on different queues.
Developers can use GCD to perform tasks in the background, update the UI on the main thread, and more.
Struct is a value type, Class is a reference type in Swift.
Structs are passed by value, Classes are passed by reference.
Structs are immutable by default, Classes are mutable.
Use Structs for simple data types, Classes for more complex objects.
I applied via Naukri.com and was interviewed in Mar 2024. There were 2 interview rounds.
I applied via Recruitment Consulltant and was interviewed in Mar 2024. There was 1 interview round.
A closure is a self-contained block of code that can be passed around and used in your code. An escaping closure is a closure that is called after the function it was passed to has returned.
Closure is a block of code that can be passed around and used in your code.
Escaping closure is called after the function it was passed to has returned.
Example: Using a completion handler in a network request to handle the response a
Multi threading is the ability of a CPU to execute multiple threads concurrently, allowing for improved performance and responsiveness in applications.
Allows for parallel execution of tasks, improving performance
Enables applications to remain responsive while performing intensive tasks
Can lead to synchronization issues if not managed properly
ARC (Automatic Reference Counting) in Swift is a memory management system used to automatically manage memory allocation and deallocation.
ARC keeps track of how many references there are to an object and automatically deallocates it when there are no more references.
Use strong reference cycles can lead to memory leaks, so use weak or unowned references to break the cycle.
ARC is the default memory management system in S...
MVVM (Model-View-ViewModel) is an architectural design pattern commonly used in iOS development to separate concerns and improve code maintainability.
MVVM separates the user interface (View) from the business logic (ViewModel) and data (Model).
ViewModel acts as an intermediary between the View and the Model, handling user interactions and updating the data.
Swift provides tools like Combine framework for reactive progra...
commit() writes the changes synchronously, apply() writes the changes asynchronously.
commit() returns a boolean value indicating success or failure, while apply() does not.
commit() writes the changes immediately to the disk, while apply() writes the changes to the memory first and then to the disk asynchronously.
apply() is faster than commit() as it writes the changes in the background thread.
Use commit() when you need...
Alpha testing is done by internal teams before release, while beta testing is done by external users after alpha testing.
Alpha testing is done by internal teams to identify bugs and issues before releasing the software to the public.
Beta testing is done by external users who are not part of the development team to gather feedback and identify any remaining issues.
Alpha testing is usually done in a controlled environmen...
Product Flavour is a feature in Android development that allows you to create different versions of your app with different configurations.
Product Flavours are used to create different versions of an app for different purposes or target audiences.
Each Product Flavour can have its own unique code, resources, and configurations.
Product Flavours are defined in the build.gradle file of an Android project.
Examples of Produc...
Yes, we can use Activity without XML by programmatically creating the UI elements.
Activities can be created and managed entirely in code without using XML layouts.
UI elements can be added to the activity using Java code.
This approach is useful for creating dynamic UIs or for cases where XML layouts are not suitable.
Yes, users can downgrade an app from PlayStore by uninstalling the current version and installing an older version manually.
Users can uninstall the current version of the app from their device.
They can then search for the older version of the app APK file online or use a backup they may have.
After downloading the older version APK, they can manually install it on their device.
I applied via Naukri.com and was interviewed in Nov 2023. There was 1 interview round.
based on 2 reviews
Rating in categories
System Engineer
1.1L
salaries
| ₹1 L/yr - ₹9 L/yr |
IT Analyst
67.6k
salaries
| ₹5.1 L/yr - ₹16 L/yr |
AST Consultant
51.2k
salaries
| ₹8 L/yr - ₹25 L/yr |
Assistant System Engineer
29.9k
salaries
| ₹2.2 L/yr - ₹5.6 L/yr |
Associate Consultant
28.7k
salaries
| ₹8.9 L/yr - ₹32 L/yr |
Amazon
Wipro
Infosys
Accenture