07 Aug
|
Cyber Intelligence And Research Lab
|
Thane
07 Aug
Cyber Intelligence And Research Lab
Thane
Job Title: Software Developer (Software Architecture & R&D;)
Job Type : Full-Time
Experience : 1 to 5 Years (Exceptional freshers with strong practical skills and projects are encouraged to apply)
Job Summary
We are looking for an independent Software Developer who understands software engineering from first principles rather than relying on specific frameworks or programming languages.
The ideal candidate should be capable of understanding a problem, designing the best possible solution, and building scalable, maintainable software with minimal resources.
Programming language is not the primary requirement. We value engineers who understand how software actually works, how different components communicate, and how to architect reliable systems.
This is an R&D-oriented; role, where every project may require learning new technologies, experimenting with different approaches, and building solutions from scratch.
Key Responsibilities
- Design, develop, and maintain software applications from concept to deployment.
- Analyze requirements and propose efficient software architectures.
- Develop scalable backend services and APIs.
- Build responsive frontend applications where required.
- Design efficient database schemas and optimize queries.
- Integrate multiple software modules and third-party services.
- Debug complex issues across frontend, backend, databases, and infrastructure.
- Write clean, modular, maintainable, and well-documented code.
- Optimize applications for performance, reliability, and scalability.
- Research and evaluate new technologies for future projects.
- Participate in product design and technical decision-making.
Required Technical Skills
Programming Fundamentals
Strong understanding of:
- Data Structures
- Algorithms
- Object-Oriented Programming
- Functional Programming concepts
- Design Patterns
- Memory Management
- Multi-threading
- Concurrency
- Asynchronous Programming
- File Systems
- Operating System basics
- Networking fundamentals
Computer Science Fundamentals
Good understanding of:
- How code executes at machine level
- Binary and hexadecimal number systems
- Bits, bytes, and memory representation
- CPU architecture fundamentals
- Stack and Heap memory
- Process vs Thread
- Compiler and Interpreter concepts
- Runtime execution
- Performance optimization
Software Architecture
Experience designing:
- Modular software
- Client-Server applications
- REST APIs
- Microservices (where appropriate)
- Monolithic applications
- Event-driven architectures
- Distributed systems (preferred)
Must understand:
- Separation of concerns
- Layered architecture
- Dependency Injection
- SOLID Principles
- Software scalability
- Maintainability
- Code reusability
Backend Development
Experience with:
- API Design
- REST APIs
- Authentication
- Authorization
- Session Management
- Background workers
- File handling
- Logging
- Error handling
Frontend Development
Understanding of:
- HTML
- CSS
- JavaScript
- Modern frontend frameworks (React, Vue, Angular, etc.)
- Responsive UI
- State Management
(Framework expertise is less important than understanding how frontend communicates with backend.)
Database
Experience with:
- SQL databases
- NoSQL databases
- Database normalization
- Indexing
- Query optimization
- Transactions
- Data modeling
Integration
Experience integrating:
- Internal software modules
- Third-party APIs
- Payment gateways
- Authentication providers
- Cloud services
- Hardware devices (preferred)
DevOps (Preferred)
Basic understanding of:
- Linux
- Docker
- Git
- CI/CD
- Reverse Proxy
- Web Servers
- Cloud deployment
Programming Languages
We do not hire based on a specific programming language.
Experience with any of the following is acceptable:
- C, C++, Rust, Go, Java, Python, JavaScript, TypeScript, C#, PHP, Kotlin, Swift, Others
A strong engineer should be able to learn a new language when required.
Required Soft Skills
- Strong logical thinking.
- Excellent problem-solving ability.
- Ability to work independently.
- Curiosity to understand systems at a deeper level.
- Strong analytical mindset.
- Creative thinking for solving complex engineering problems.
- Passion for Research & Development.
- Ability to quickly learn new technologies.
- Good communication and documentation skills.
We are looking for engineers who don't simply ask: "Which framework are we using?"
Instead, they ask:
- What problem are we solving?
- What is the simplest architecture that solves it?
- Can this system scale in the future?
- Can it be made faster, simpler, and easier to maintain?
- Is there a better engineering approach?
We value engineers who understand the complete software stack from how data is represented in memory to how a distributed application is deployed in production.
If you enjoy solving challenging technical problems, building software from scratch, and continuously learning current technologies, we would love to hear from you.
📌 Software Developer (Software Architecture & R&D) (Thane)
🏢 Cyber Intelligence And Research Lab
📍 Thane