Job Description: Senior Software Developer (Exp.2-6 years)
Location: Bangalore
What you need:
* Bachelor’s/Master’s degree is preferred in computer science or related field (such as computer engineering, software engineering, biomedical engineering, or mathematical sciences) from premier institutes.
* 1-3 years of industry experience in professional software development.
* Strong C++ knowledge.
* Knowledge of ITK / VTK / OpenCV / Robots / Qt Framework is plus.
* Required Technical Competencies in Algorithms and data structures object oriented design and analysis.
* Expertise in Design Patterns & C++ programming concepts; Linear Algebra, Computer Vision, Software design, development and verification methodologies would be preferred.
* Should be open to work in fast growing medical devices start-up making cutting edge computer assisted & robotic assisted surgery products in India for the world.
* Should have willingness to develop something great from India.
What you will do:
* Work with program manager to understand business requirement and translate that into technical design.
* Create and own leading edge reusable algorithm solutions.
* Create and own cross-platform SDKs.
* Research cutting-edge algorithms and techniques.
* Lead technical design and implementation of a feature.
* Implement high quality code with comprehensive unit testing.
* Troubleshoot issues raised from production and resolve customer problems.
* Evaluate and adopt technologies which improve the team efficiency and platform capability.
* Code review peer developers code and provide constructive feedbacks to ensure consistency and quality of code.
* Be a part of core R&D team for developing Surgical Robots.
* Ensures the integrity and security of company intellectual property and confidential data.
Company Profile
Happy Reliable Surgeries Pvt Ltd (HRS Navigation) started in 2015. It is India's first and only company to develop high tech surgical navigation system for highly complex Brain & Spine surgeries. Our products directly compete with world’s biggest medical devices companies. We are proudly one of the few global companies who have capabilities to develop Computer assisted and Robotic Assisted surgeries products. R&D Centre is based at Bangalore. It has been started by Ex of a global medical device company. It has been incubated & mentored by IIM Calcutta.
Why Do We Exist: - Currently all hi-tech medical devices are imported. Which leads to very high cost of healthcare & non reachability to common people. Our Purpose is to make premium healthcare affordable & accessible by continuous innovation for our people. We want to make India Proud.
Our Achievements: -
- 10 Best start-up in Medical Devices (Insight Success Magazine)
- Won Top 50 emerging product start-up NASSCOM 2017 (National Award)
- Winners in Economic Power of Ideas award 2018 (IIM Ahmadabad) (National Award)
- Winners in Smart Fifty competition conducted by IIM Calcutta (National Award)
- Won Elevate 100, Karnataka top 100 company (State Award from Karnataka Government)
- Grown Exponential even in 2020 financial Year. (No Salary Cuts / Firings)
- 3000+ successful Surgeries performed by our products.
About HRS Navigation Pvt. Ltd.
Happy Reliable Surgeries Pvt Ltd (HRS Navigation) started in 2015. It is India's first and only company to develop high tech surgical navigation system for highly complex Brain & Spine surgeries. Our products directly compete with world’s biggest medical devices companies. We are proudly one of the few global companies who have capabilities to develop Computer assisted and Robotic Assisted surgeries products. R&D Centre is based at Bangalore. It has been started by Ex of a global medical device company. It has been incubated & mentored by IIM Calcutta.
Why Do We Exist: - Currently all hi-tech medical devices are imported. Which leads to very high cost of healthcare & non reachability to common people. Our Purpose is to make premium healthcare affordable & accessible by continuous innovation for our people. We want to make India Proud.
Our Achievements: -
- 10 Best start-up in Medical Devices (Insight Success Magazine)
- Won Top 50 emerging product start-up NASSCOM 2017 (National Award)
- Winners in Economic Power of Ideas award 2018 (IIM Ahmadabad) (National Award)
- Winners in Smart Fifty competition conducted by IIM Calcutta (National Award)
- Won Elevate 100, Karnataka top 100 company (State Award from Karnataka Government)
- Grown Exponential even in 2020 financial Year. (No Salary Cuts / Firings)
- 3000+ successful Surgeries performed by our products.
Similar jobs
Responsibilities of IoT Engineer
- To research, build, test, and document state-of-the-art IoT solutions with integrated electronics and firmware development.
- To develop local IoT device software that includes monitoring, execution, and self-healing processes.
- To design innovative IoT services that communicate with server-side technologies and develop MEAN stack solutions wherever necessary.
- To learn the functionings of and implement new state-of-the-art tools/techniques to showcase experience in quick prototyping methods and structured implementation.
- To design and develop platform solutions for cloud-to-edge IoT applications with customizable configuration abilities for deployment to different clients with different needs.
- To work with dynamic IoT, Computer Vision, and MEAN technology stack to find solutions to complex real-world problems.
- To plan and build efficient tools to optimize support QA, deployment, and support services.
Skills required to become an IoT Engineer
To become an IoT Developer, you must have the following skills:
- You should have hands-on experience in coding in multiple programming languages, including Embedded-C, Embedded C++, and Python.
- It would help if you had an in-depth understanding of Linux OS and its process management, device management, and connectivity features.
- You should be well-versed in embedded software architecture – prior experience in working with UML use-case diagram, class-diagram, and sequence diagram to accurately depict system architecture is highly valued.
- You should possess in-depth technical knowledge in working with 32-bit ARM cortex M3/M4 controllers.
- You should have prior experience in working with wireless stacks like Zigbee or Thread or BLE-Mesh.
- You should have expert knowledge and be proficient in writing business logic on embedded environments using test-driven methodology on RTOS and non-RTOS platforms.
- You should be proficient in communication protocols including I2C, SPI, 1-wire, UART, MODBUS, DALI.
- You must have excellent communication, problem-solving, and analytical thinking abilities.
Technical Lead (Embedded Software - Linux)
Job Responsibilities:
Lead a team of software/Linux development engineers working on microcontroller firmware development, Linux platform drivers and IOT solutions. Should be able to guide team members, resolve technical roadblocks and deliver project commitments. Will be the go-to person and first-level escalation point for all technical issues faced by the team. Looking for someone with 6+ years in the embedded industry and a passion to build a core team in a growing company. Team size will vary from 6 to 12 people, mainly firmware and Linux engineers.
The selected candidate for this role will be reporting to the software director/manager in the organization.
- Work with firmware and application architects to create a project execution plan
- Review project proposals for execution scope & timelines
- Lead embedded software development activities by the team
- Work with QA teams to resolve bugs and ensure release readiness
- Work with h/w design and PM teams to ensure smooth execution and timely delivery of projects
The main responsibilities of this role are:
Technical:
- Strong programming skills (C, C++, assembly)
- Linux development experience (porting & platform drivers)
- Expert-level knowledge of embedded microcontroller & microprocessor-based systems
- Prior experience in delivering critical modules for microcontroller projects
- Good understanding of commonly used embedded communication protocols
- Good understanding of common embedded peripherals, interfaces & sensors
- Experience working on Real-Time systems (RTOS)
- Should be able to quickly learn new technologies and enable the team on the same
- Should be able to work with minimal technical guidance
Leadership:
- This role requires excellent communication skills
- Strong analytical & problem-solving skills
- Should be able to lead junior engineers by providing technical mentoring
- Owns task division, task allocation and tracking within the team
- Require multi-tasking and time management skills
- Prior experience working with overseas clients
- Periodically report progress to management
Other desirable skills:
Knowledge of Python
Experience: 6 to 10 years
- Working Experience in
· C and/or C++ programming
o Should have Project working experience in C or C++
o Should have done feature enhancement and/or Bug fixing using C/C++.
· System Programming knowledge in
o Muti-threaded programming, Process contexts/forks/execs and system calls
o IPCs (like Socket programming, Message Queues, semaphores)
o Linux Operating system
o File access calls, like file descriptor handled operations.
· Enterprise Security domain and SaaS
o IPSec, SSL VPN tunnelling
- Experience 4 - 8 years
- Key Skills for Software Developer C++, Linux :
- - Looking only for candidates who can join immediately or max 10 day
- - should be able to work independently with no handholding
- - the ability to work with C/C++ code on Windows/Linux platforms
- - Database knowledge of MSSQL, Oracle, MySQL/MariaDB, ideally other ones too: Saphana, Teradata, Postgres.
- - Ability to work on their own fixing defects
- - should be able to understand secure coding practices
- - should have the Ability to work independently and with the team across different time zones
Software development for video streaming solutions. The position is for a developer role who will translate functionality building blocks and components into to software code, integrate the functional components in the architectural framework. The position will be responsible for complete software development including requirements analysis, design, implementation, unit test, integration. Expert in C++, C#, Network protocols like TCP/UDP, design patterns and principles. Hands on with network protocols in C#. Understand cloud technology.
Strong debugging skills. Video streaming hands is preferred. Video Management solutions (VMS) hands on is big plus. It requires closely working with SMEs/ domain experts. Responsible for algorithm development, programming, unit testing, implementation, documentation, maintenance and support of systems software’s in adherence with Industry standards, processes and best practices. Develop high quality, secure, scalable software solutions based on technical requirements specifications and design artifacts within expected time and budget. Assist team members in the development of applications, components, system to system interfaces and complete software solutions. Collaborate with cross-functional teams to determine functional and non-functional requirements for new software or applications Collaborate with SMEs, domain experts, quality assurance and end users to produce cutting-edge robust software solutions Develop product specifications with attention to safety criticality, robustness & reliability, extendibility & flexibility Evaluate existing software solutions to identify areas for improvement, modularization Design and documentation of evolving architecture in terms of UML diagrams, architectural diagrams, state-machines, flow-charts etc. Code implementation, debugging and unit testing
Work with project team to meet scheduled due dates, while maintaining the software quality. Assistance in testing activities as per standard V&V practices and Quality Assurance Maintain thorough documentation of software artefacts as per software development guidelines for moderately-complex projects. Actively look for opportunities to enhance standards and improve process efficiency.
Skills
- Minimum 5+ years of proven experience as software engineer.
- Strong in Network protocols, OOPS concepts and data structures.
- Familiarity with application software development as well as embedded software development
- Experience in software development and coding in various languages (C, C++, C#)
- Excellent knowledge of software and application design, architectural styles and design patterns, architecture tradeoff analysis
- Proficient understanding of any one of code versioning tools (Git, SVN, and Mercurial)
- Familiarity with formal change control and support processes (JIRA, BitBucket, Scrum etc.)
- Understanding of V&V approaches and software quality assurance principles
- Experience with service-oriented architecture (SOA), and cloud technologies would be an added advantage
- A technical mindset with great attention to details, innovation
- Good analytical, communication and presentation skills
Key Shared Accountabilities
Customers: Competence to build and effectively manage interpersonal relationships at all levels with different clients and vendors.
Business Team: Work Closely with business team to understand the needs and deliver by maintaining harmonious relationship.
Desired Behavioural Values
- Commitment to common purpose and goals
- Seating respect on the table
- Displaying Integrity and Ethic
- Taking initiative and ownership
- Being passionate about making a difference
- Constant networking with thought leaders, analyst & special interest groups.
- Collaborate with SMEs, domain experts and quality assurance to produce cutting-edge robust software solutions.
- Dreamer, Creative, Passionate & self-motivated & self-starter
- Actively listen to others and demonstrate understanding of other points of view.
- Showcase likeliness to adjust to changing conditions or priorities.
- Take the initiative to identify, work on problems proactively and lead by example.
- Consistently provide ideas, opinions, or information in a professional way.
- Understand IP & trademark policies and actively promote safe practices in projects.
Primary Skill: System Software Development
Skill sets req:
- Linux porting/development; Linux kernel concepts
- Expertise in Linux BSP device driver development
- Customizing kernel + Porting + Developing Applications Linux Device Driver Development (Character devices) Good Concepts of Network Drivers File Systems Concepts
- Expertise in porting, network stack; optimization, network programming
- Bootloader/Uboot porting
- Camera driver development (Good to have)
Job Area Engineering - Software
Location Remote
Job Description
This position is ideal for a Senior SW engineer who is passionate about solving challenging business problems and building security services that provide an excellent client experience. You will be an integral part of the vulnerability assessment product development team focusing on designing, coding, and testing new and enhanced security services for z/Linux. The successful candidate should be a self-motivated individual with expert software engineering skills and solid expertise with IBM mainframe technologies. Candidate must be flexible and willing to switch tasks based on team's needs.
Qualifications
Basic Qualifications
- Bachelor's degree in Engineering, Information Systems, Computer Science, or related field.
- 1+ years experience with Programming Language such as C, C++, Java, Python, etc.
- Linux kernel and device driver development
- Experience with development boards such as DragonBoard
- Experience with python, perl, rust, shell scripting
- C programming and debugging skills
Preferred Qualifications
- CPU and cache architectures
- Experience with JTAG and GDB debuggers
- Linux Kernel upstream patch submission
- CPU performance and power analysis
- Independent and self-motivated problem solver and strategic thinker
- Proficient in Git for development and patch/branch management
Essential Functions
- Good planning, time management, decision-making, presentation, and organization skills
- Effective written and verbal communication
- Excellent interpersonal and teamwork skills