Bina Patel, Developer in Bengaluru, Karnataka, India
Bina is available for hire
Hire Bina

Bina Patel

Verified Expert  in Engineering

Embedded Software Developer

Location
Bengaluru, Karnataka, India
Toptal Member Since
October 16, 2022

Bina is an experienced embedded software developer who has worked on different phases of product development. She has strong coding experience in C and C++ for embedded systems and is also familiar with Java. Bina has worked on device drivers, different networking protocols, and RTOS-based and bare-metal embedded products.

Portfolio

Schneider Electric
C, Embedded C, C++, Embedded C++, Java, Real-time Embedded Systems...
Avaya India
Embedded C++, C++, VxWorks, Real-time Operating System (RTOS), Embedded Linux...
Matrix Comsec
C, C++, Embedded C, Embedded C++, Java, Android SDK, iOS...

Experience

Availability

Full-time

Preferred Environment

C, Real-time Embedded Systems, C++, Firmware

The most amazing...

...thing I've developed is a remote VPN client for H.323-based VoIP phones. I implemented the VPN client using the IPsec suite.

Work Experience

Technical Manager | Embedded Software Engineer

2018 - 2022
Schneider Electric
  • Helped build overall architecture for component-based software engineering, including overall guidelines for component design and exposed interfaces. Led all architecture, design documents, and code reviews for newly developed components.
  • Developed different components for IoT gateways as part of the platform team. Contributed to different components, such as BLE, cyber security, user management, role-based access control, authentication, certificate management, and REST services.
  • Acted as a technical manager for developing and product verification of various IoT gateways as part of the IoT gateway group. I was in charge of resource and budget management, project tracking, interacting with stakeholders, and process management.
Technologies: C, Embedded C, C++, Embedded C++, Java, Real-time Embedded Systems, Real-time Operating System (RTOS), Microcontrollers, Git, Jira, Software Development Lifecycle (SDLC), Project Budget Management, Resource Management, Resource Allocation, MISRA Compliance, Embedded Software, Embedded Systems, IoT Security, Bootloaders, Embedded Java, Mbed TLS, X.509 Certificates, ARM, Bluetooth LE, Zigbee, Modbus Protocol, Constrained Application Protocol (CoAP), Role-based Access Control (RBAC), User Roles, User Management, JSON, JUnit, Google Test, Coverity, REST, User Authentication, Python, Agile, Scrum, Software Architecture, FreeRTOS, Technical Documentation, UML Diagrams, Visual Studio, Technical Leadership

Technical Lead

2015 - 2018
Avaya India
  • Served as the technical lead in the VoIP endpoints group for the development and sustenance of various Avaya IP phones, such as 96x0 SIP, 96x0 H.323, and 1600 series.
  • Managed project tracking, technical status reporting, initial evaluation of reported issues, interacting with the customer-facing team for analysis and providing quick turnarounds, design discussions and decisions, and code reviews.
  • Made various enhancements for VoIP phones, such as SHA-2 support, dialing rules, and support of SSLv3.
Technologies: Embedded C++, C++, VxWorks, Real-time Operating System (RTOS), Embedded Linux, H.323, SIP, Subversion (SVN), Jira, Embedded Systems, Real-time Embedded Systems, Embedded Software, Bootloaders, Git, Embedded C, C, Device Drivers, Human-machine Interface (HMI), HTTP, SNMP, TCP/IP, Transport Layer Security (TLS), Multithreading, IPC, OpenSSL, DSP, Microcontrollers, Microprocessors, CppUnit, Libcurl, Libwww, Agile, Scrum, Scrum Master, Software Architecture, Technical Documentation, HTML, Technical Leadership

Software Development Group Lead

2012 - 2015
Matrix Comsec
  • Worked in the telecom division as a software group lead for the development of various telecom products, product-level architecture design, new technology development, proof of concepts of new ideas, project planning, and software processes.
  • Acted as a technical lead and managed the development of iOS and Android-based SIP soft clients.
  • Led a group of team leaders to improve quality and streamline the project processes. Implemented tools like Jira, Crucible, and Fisheye for software processes and defined the lifecycle of projects, review process, and Jira state cycles.
  • Worked on the feasibility of porting legacy embedded-based EPABX software to run on OpenServer. The POC was successfully demonstrated: moving to UC server solutions was a major task.
  • Led the team of technical leads to design UC server solutions which included competitor analysis for UC solutions, the feasibility of open stacks, server solutions, and proof of concepts.
  • Worked on the POC to run existing hardware-based call server software on a generic Linux machine: separated the call management module from call switching and used Linux RPC to communicate between two systems.
  • Led the team to develop a VOIP SIP application for Windows desktop and was mainly involved in overall architecture and design/code reviews.
Technologies: C, C++, Embedded C, Embedded C++, Java, Android SDK, iOS, Software Development Lifecycle (SDLC), Jira, Subversion (SVN), Native Mobile Apps, Session Initiation Protocol (SIP), Networking, Real-time Embedded Systems, Embedded Software, Embedded Systems, Bootloaders, Linux, Microcontrollers, Microprocessors, Multithreading, IPC, Linux IPC, Real-time Operating System (RTOS), Windows Desktop Software, Human-machine Interface (HMI), Objective-C, OpenVPN, PJSIP, SQLite, MongoDB, Waterfall Development, Software Architecture, Technical Leadership

Technical Lead | Architect

2004 - 2012
Wipro
  • Developed a remote VPN client for H.323-based VoIP phones, DSP, and MIPS-based design and programming in C/C++ using VxWorks RTOS. Implemented the VPN client using the IPsec suite and enabled authentication via PSK and certificates.
  • Built firmware for digital phones used on Avaya PBX. These digital phones were based on a 16-bit microcontroller design. Used embedded C, NC30 cross compiler, and PD30 emulator.
  • Defined and wrote requirements and features specifications—system engineering for digital technology-based Avaya phones, from boot up to user interface requirements. This also included production and factory testing specifications.
  • Developed prototypes for IP phones like a mute detector, TTY/TTD, waveform monitoring for audio quality, and Binary certificate support. Some of these are part of product official releases, and the mute detector is filed for patent.
  • Worked on the POC for mute detector: worked on feasibility and implemented a proof of concept to detect voice activity when the microphone is muted. This was filed and accepted for a patent.
  • Worked on a bootloader for Avaya Digital phones, which supports basic functionality to download main application upgrade and HMI to provide updates on application download. Also implemented the mechanism to update bootloader software.
  • Worked in Tier4 team for some time to resolve customer escalations, working on different signaling, networking, audio, and user interface issues.
Technologies: C, C++, Embedded C, Embedded C++, Real-time Operating System (RTOS), VxWorks, Embedded Linux, Embedded Systems, Session Initiation Protocol (SIP), H.323, TCP/IP, VPN, IPsec, SNMP, Software Development Lifecycle (SDLC), Subversion (SVN), Jira, IBM Rational ClearQuest, IBM Rational ClearCase, Embedded Software, Transport Layer Security (TLS), Device Drivers, Human-machine Interface (HMI), DSP, OpenSSL, V-Model, Software Architecture, System Requirements, Functional Requirements, Technical Documentation, Technical Leadership

Embedded Software Lead

2001 - 2004
Matrix Telecom (now Matrix Comsec)
  • Handled design and development of the SOHO application and digital EPABX system. It supported a total of 52 ports of ISDN BRI phones, analog trunks, and digital and analog key phones, and it supported more than 50 call management features.
  • Contributed to the firmware development of ISDN BRI and PRI cards for the digital EPABX system. Designed and developed layer 1 (I.431), layer 2 (Q.921), and layer 3 (Q.931) modules and a complete firmware program for these cards.
  • Implemented PLCC on digital EPABX to use EPABX in electricity boards using E&M lines between power stations. This was the company's first product launch in the electric field, which helped win the tender from the new business sector.
  • Developed an app for debugging and monitoring ISDN messages to and from ISDN PRI and ISDN BRI cards. Designed a communication protocol on the RS-232 COM port between the firmware card and PC. Messages are sent to the monitoring application using XML.
  • Developed an windows application to upgrade call server software using VC++, used PC com port to communicate with call server hardware which runs on intel 80386 board.
  • Worked on call server software to add call management features (support of new interfaces, issues related to switching, customer escalations) based on Intel 80386 board and C++ programming.
Technologies: C, C++, Integrated Services Digital Network (ISDN), Telecom Equipment & Solutions, Embedded C, Embedded C++, Microcontrollers, Microprocessors, Real-time Embedded Systems, Firmware, Waterfall Development, FreeBSD, Keil, Assembly, Bootloaders, Intel, Windows Desktop Software, HTML, Human-machine Interface (HMI), Device Drivers, Visual Studio

VPN Client for VoIP Phones

Developed a remote VPN client for H.323-based VoIP hard phones. VoIP phone hardware was based on DSP and MIPS, and firmware design and programming for this was built in C/C++ using VxWorks RTOS. VPN client was implemented using the IPsec suite—ESP, IKE, ISAKMP, and authentication was enabled using PSK and certificates.

This project required providing configuration for VPN client (both PSK and certificate-based authentications) and integration of VPN stack. The main challenge was to integrate the VPN client into existing phone software using TCP/IP stack and OpenSSL library and tunnel already existing networking applications like HTTP, H.323, and RTP through VPN.

I served as a technical lead for this project, making all technical decisions related to design and development, and was a prime for all the code reviews. I also integrated the VPN stack and implemented certificate management and certificate-based authentication modules.
1996 - 2000

Bachelor of Engineering Degree in Electronics and Communications

Gujarat University - Nadiad, Gujarat, India

Languages

C, Embedded C, Embedded C++, Pascal, Assembly, C++, Java, Objective-C, Python, HTML

Paradigms

Role-based Access Control (RBAC), Agile, Scrum, Waterfall Development, REST

Other

Real-time Embedded Systems, Firmware, Embedded Software, Bootloaders, Device Drivers, Human-machine Interface (HMI), Multithreading, IPC, User Roles, User Management, Software Architecture, Communications Electronics, Microcontrollers, Microcontroller Programming, Networking, Integrated Services Digital Network (ISDN), Telecom Equipment & Solutions, Real-time Operating System (RTOS), Embedded Systems, Session Initiation Protocol (SIP), H.323, TCP/IP, IPsec, Software Development Lifecycle (SDLC), RTP, HTTP, MISRA Compliance, IoT Security, Transport Layer Security (TLS), DSP, ARM, User Authentication, Scrum Master, V-Model, Microprocessors, SNMP, Native Mobile Apps, SIP, Project Budget Management, Resource Management, Resource Allocation, X.509 Certificates, Linux IPC, Windows Desktop Software, Embedded Java, Zigbee, Modbus Protocol, Constrained Application Protocol (CoAP), System Requirements, Functional Requirements, GNSS, ESP32, ESP8266, FreeRTOS, Technical Documentation, UML Diagrams, Technical Leadership

Frameworks

JUnit, Google Test, Android SDK

Libraries/APIs

CppUnit, OpenSSL, Mbed TLS, Libcurl, Libwww, PJSIP

Tools

VPN, Subversion (SVN), Jira, Coverity, IBM Rational ClearQuest, IBM Rational ClearCase, Git, OpenVPN, Keil, Visual Studio

Platforms

VxWorks, Embedded Linux, iOS, Linux, Bluetooth LE, FreeBSD, Intel

Storage

JSON, SQLite, MongoDB

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring