Cutshort logo
Espressif Systems India Pvt Ltd logo
Senior Bluetooth Engineer
Espressif Systems India Pvt Ltd's logo

Senior Bluetooth Engineer

Anuja Pawar's profile picture
Posted by Anuja Pawar
4 - 10 yrs
₹15L - ₹30L / yr
Pune
Skills
BLE
Bluetooth
skill iconC
skill iconPython
Bluettoth low energy
BLE 5.x
BLE Mesh

Senior BLE Firmware Software Engineer

 

About Company

 

https://espressif.com/">Espressif Systems (688018) is a public multinational, fabless semiconductor company established in 2008, with headquarters in Shanghai and offices in Greater China, India and Europe. We have a passionate team of engineers and scientists from all over the world, focused on developing cutting-edge WiFi-and-Bluetooth, low-power IoT solutions. We have created the popular ESP8266 and ESP32 series of chips, modules and development boards. By leveraging wireless computing, we provide green, versatile and cost-effective chipsets. We have always been committed to offering IoT solutions that are secure, robust and power-efficient. By open-sourcing our technology, we aim to enable developers to use Espressif’s technology globally and build smart connected devices. In July 2019, Espressif made its Initial Public Offering on the Sci-Tech Innovation Board (STAR) of the Shanghai Stock Exchange (SSE).

 

Espressif has opened a Technology Center in Pune (Baner), India, which will focus on embedded software engineering and IoT solutions development for our growing customers.

 

About the Role

 

Espressif is looking for Embedded Software Engineers to join the software department located in India. You will work in a diverse team where your colleagues are from Czech, Russia, India, Australia and so forth. Here, you get a chance to be a member of the core team in Espressif and work with talented engineers from all over the world.

 

The BLE Firmware Development Team is now focused on the development of the Bluetooth 5.x standard and BLE Mesh standard.

 

BLE FW Team is looking for a self-starting, high-technical, energetic individual with keen attention to details. The Candidate will be actively involved in:

 

  1. Development of Bluetooth Low Energy (BLE) Firmware for Espressif Bluetooth chips.
  2. Development of new firmware for BLE latest specification (BLE 5.x, BLE Mesh, etc).
  3. Development of BLE chip validation and Bluetooth Qualification.
  4. Research of cutting-edge and challenging Bluetooth technologies (BLE Audio, BLE Direction Finding, Next-Generation BLE Chip, etc).
  5. Supporting the existing firmware through feature additions, enhancements and maintenance.
  6. Working with systems team and cross-functional teams to deliver quality software following well-established software development processes.
  7. Resolving issues as reported by internal test teams as well as customers.

 

Requirements

 

Required skills

  1. Bachlor's degree or above in Electronic Engineering, Communications Engineering, Automation or other related majors
  2. Familiarity with Bluetooth Low Energy (BLE) protocol or BLE Mesh protocol
  3. Proven experience in developing BLE stack / firmware (2+ years, both BLE host and controller) or BLE Mesh stack (2+ years)
  4. Experience with software engineering processes and the full software development lifecycle including requirements, design, implementation, testing, and documenting in Continuous Integration environment
  5. Strong experience and proficiency in C programming (3+ years) for embedded platforms required
  6. Excellent problem solving and debugging skills

 

Bonus point

  1. Experience in developing BLE profiles and BLE applications (e.g. HID, ANCS, Homekit, etc)
  2. Good understanding of other networking protocol stacks is highly desired (e.g. Zigbee, IEEE 802.11, UWB, Lora, NB-IoT, etc)
  3. Strong Real-time systems and software engineering skills required (e.g. FreeRTOS, etc)
  4. One or more scripting languages (e.g. Python, etc)
  5. Experience with variety of software productivity tools (e.g. Git, Jira, etc)

 

What to expect from our interview process

 

  • The first step is to email your resume or apply to the relevant open position, along with a sample of something you have worked on such as a public GitHub repo or side project etc.
  • Next, post shortlisting your profile recruiter will get in touch with you via a mechanism that works for you e.g. via email, phone. This will be a short chat to learn more about your background and interests, to share more about the job and Espressif, and to answer any initial questions you have.
  • Successful candidates will then be invited for 2 to 3 rounds of technical interview as per previous round feedback.
  • Finally, Successful candidates will have interview with HR.

 

What you offer us

 

  • Ability to provide technical solutions, support that fosters collaboration and innovation.
  • Ability to balance a variety of technical needs and priorities according to Espressif’s growing needs.

 

What we offer

 

  • An open minded, collaboration culture of enthusiastic technologist.
  • Competitive salary
  • 100% company paid medical/dental/vision/life coverage
  • Frequent trainings by experienced colleagues and chances to take international trips, attend exhibitions, technical meetups and seminars.

 

Read more
Users love Cutshort
Read about what our users have to say about finding their next opportunity on Cutshort.
Shubham Vishwakarma's profile image

Shubham Vishwakarma

Full Stack Developer - Averlon
I had an amazing experience. It was a delight getting interviewed via Cutshort. The entire end to end process was amazing. I would like to mention Reshika, she was just amazing wrt guiding me through the process. Thank you team.
Companies hiring on Cutshort
companies logos

About Espressif Systems India Pvt Ltd

Founded :
2008
Type :
Product
Size :
500-1000
Stage :
Profitable

About

Espressif Systems is a multinational, fabless semiconductor company established in 2008, with headquarters in Shanghai and offices in Greater China, India and Europe. We have a passionate team of engineers and scientists from all over the world, focused on developing cutting-edge WiFi-and-Bluetooth, low-power, IoT soluti
Read more

Connect with the team

Profile picture
Anuja Pawar
Profile picture
Rifatul Siddique
Profile picture
Rifatul Siddique

Company social profiles

instagramlinkedintwitterfacebook

Similar jobs

Germany-Headquartered Fast-Growing IT Consulting Company
Germany-Headquartered Fast-Growing IT Consulting Company
Agency job
Bengaluru (Bangalore)
4 - 6 yrs
₹20L - ₹25L / yr
skill iconPython
Embedded C++
skill iconC
skill iconGo Programming (Golang)
Bash
+7 more

Location: Bengaluru, Kadugodi

Experience: 4-6 years

About company:

Client is a Germany-headquarted IT consulting and service organization. With over 25 years of expertise and global presence, we are committed to customer excellence and focused in addressing niche areas of product engineering, process consulting and software development in automotive, railways, production automation, data management and business IT domains.


Key Responsibilities:

  • Develop or enhance features to meet industry standards, safety regulations, and project specifications.
  • Collaborate with Business stakeholders to understand Business Requirements
  • Work closely with hardware engineers, QA, and Scrum Master to integrate software solutions into embedded systems.
  • Identify Problems and resolve technical issues within embedded systems, making critical decisions on system architecture and software design.
  • Strive towards Improving Processes, system performance, optimize code and innovate in software design.
  • Work closely with vendors to design and implement edge AI solutions


Requirements:

  • Must have done B.Tech/B.E preferably in ECE stream
  • Must have Proficiency in Python/C/C++, Go Lang, Scripting in Bash
  • Must have Strong Fundamentals on Embedded Development Life cycle
  • Must have Strong knowledge on Embedded Linux, Unix/Linux commands, RTOS and SQL
  • Sound knowledge of CAN/J1939 protocol, Sensor Data Processing and Telemetry
  • Experience with tools like JIRA and Agile/Scrum methodology
  • Excellent communication skills and ability to collaborate with cross-functional teams.
  • Ability to work on multiple projects and prioritize work effectively
  • Ability to work independently and as a team member
  • Strong analytical and problem-solving skills


Nice to Have:

  • Understanding of ADAS, Driver Monitoring Systems
  • Experience with embedded video coupled with edge AI
Read more
Bengaluru (Bangalore)
7 - 10 yrs
₹10L - ₹20L / yr
Embedded Systems
Embedded Linux
PCIe protocols
Embedded RTOS
JTAG, logic analyzers, oscilloscopes,
+6 more

Position: Senior Embedded Software Engineer – PCIe / Embedded Linux

Location: Bangalore (Preferred)

Experience: 7+ years

Night Shift

About the Role:

We are seeking a highly skilled Senior Embedded Engineer with strong expertise in Embedded Linux and PCIe protocol development. The ideal candidate will have deep technical knowledge of PCIe (Gen4 and above) and experience in developing and debugging embedded systems at both hardware and software levels. Exposure to AI/ML or accelerator-based systems will be considered a strong plus.


Key Responsibilities:

  • Design, develop, and optimize embedded software on Linux and RTOS platforms.
  • Implement and validate PCIe-based communication and device drivers (Gen4 minimum, Gen5/6 preferred).
  • Work closely with hardware and system teams to debug low-level issues related to PCIe interfaces.
  • Develop firmware and system-level software components for high-performance embedded platforms.
  • Participate in board bring-up, performance optimization, and hardware/software integration.
  • Contribute to system architecture discussions and design reviews.
  • Document design, testing procedures, and performance analysis.


Core Skills Required:

  • Embedded Linux development (mandatory).
  • Deep understanding of PCIe protocols (Gen4 minimum; Gen5/6 preferred).
  • Strong knowledge of low-level driver development, DMA, interrupts, and memory management.
  • Experience with Embedded RTOS environments.
  • Familiarity with hardware debugging tools (e.g., JTAG, logic analyzers, oscilloscopes).
  • Proficiency in C/C++ and scripting (Python, Shell).
  • Excellent problem-solving and debugging skills.


Preferred Skills (Good to Have):

  • Exposure to AI/ML hardware accelerators or data processing units (DPUs).
  • Understanding of SoC architecture and high-speed interconnects.
  • Experience working with multi-core systems and performance tuning.

Education:

  • Bachelor’s or Master’s degree in Computer Engineering, Electronics, or related field.


Read more
Espressif Systems India Pvt Ltd
Anuja Pawar
Posted by Anuja Pawar
Pune, Shanghai, China
4 - 10 yrs
₹12L - ₹25L / yr
Embedded C
Embedded software
skill iconC
Shell Scripting
Perl
+4 more
Job description Title: Lead Embedded Software Engineer Type: full-time/regular, direct hire Location: Pune, India Relocation Assistance: full About this position: This is an opportunity to be a key player at a company with a great reputation in IoT semiconductor technology and growing business. We offer a great long-term opportunity in a true team environment. If you have strong experience in software programming languages such as assembly, C etc. along with software validation test procedures then this opportunity is well suited to you. We are looking for a professional Embedded Software Engineer to execute complete embedded software development lifecycle. The goal is to create scalable and optimized software systems Major Responsibilities: 1. Conceptualize, plan, design, implement and test embedded software and firmware. 2. Participate in software architecture high level design decisions. 3. Develop and maintain efficient codes written with best practices in mind. 4. Develop and maintain product documentation. 5. Work within a highly diverse technical team on cross functional integrated systems. 6. Various other tasks and projects you choose to own. Basic Qualifications: The Leading Embedded Software Engineer position requires a Bachelor's degree in Software, Computer, or Electrical Engineering, Computer Science, or a specialized area, field or the equivalent and a minimum of 5 to 10 years of related work experience. Applicants with a Master's degree and a minimum of 4 to 8 years of related experience are also eligible. Skills: • Clear and concise spoken and written communication skills are critical for this position since the engineer is responsible for gathering engineering requirements, negotiating during tradeoff analysis and documentation. • Interpersonal skills (Networking, negotiation, and tolerance). • The ability to work with cross functional, multi-regional, internal, and external teams that can have different priorities. • Ability to manage urgent situations and manage priorities. • Tolerance to ambiguity and dealing with complex engineering problems. • Ability to make decisions with minimal supervision and limited information. Requirements: 1. Proficient in C language and strong Real-Time SW development skills. 2. Scripting Languages: shell, Perl, Python or the like. 3. Microprocessors/Architectures: strong knowledge of Computer / SoC architecture, familiarity with microprocessor instruction sets is a desired. 4. Experience with RTOS desired. 5. Strong knowledge of Network protocols and layer2 MAC, preferably wireless protocols like 802.11, Bluetooth. 6.Demonstrated experience using software development best practices – requirements capture, design reviews, code reviews, coding conventions. Posting Statement: Espressif prohibits discrimination based on race, color, religion, gender, national origin, age, disability, veteran status, marital status, pregnancy, gender expression or identity, sexual orientation or any other legally protected status.
Read more
[x]cube LABS
at [x]cube LABS
2 candid answers
1 video
Krishna kandregula
Posted by Krishna kandregula
Hyderabad
3 - 6 yrs
₹1L - ₹12L / yr
skill iconC++
JS
skill iconC
Shell Scripting
Voice Over IP (VoIP)
+3 more

Job Title:

Telephony Engineer


Job Description:

- Support the operations team with debugging issues related to the telephony platform

- Identify issues with calls using monitoring and analysis tools such as VoIPMOnitor

- Write scripts to automate tasks, monitor the services and functionalities

- Contribute to the improvement of the system by providing ideas

- Help with capacity planning

- Perform the scheduled maintenance activities

- Modify the existing code to accommodate new features



Experience Range:

3- 6 years


Educational Qualifications:

Any graduation,


Job Responsibilities:

  • Knowledge of open source technologies, VoIP, SIP, WebRTC etc.

  • Shell scripting.

  • Experience in Asterisk and Kamailio or OpenSIPS.

  • C/C++ or JS programming with Linux.

  • 5-8 years experience.

  • Good communication skills.

  • Willingness to work in the night, whenever required, for handling support related issues.

Skills Required:

ViOP, OpenSIPS, SIP, Shell Scripting, Asterisk, kamailio, C++, Linux, Development,


Read more
Divistha Networks
at Divistha Networks
1 recruiter
Shivaprasad Naidu
Posted by Shivaprasad Naidu
Bengaluru (Bangalore)
3 - 15 yrs
₹7L - ₹25L / yr
skill iconC++
Kernel Programming
BSP
Embedded Linux
Linux kernel
+1 more
Education Requirements

Bachelors/Masters Degree in Engineering

Position : BSP Engineer

Total experience : 4+ yrs to 10 yrs

Desired Skills And Experience
4+ years of experience in application development, drivers development.
At least 4 years of working experience in the design and development of u-boot and Linux kernel subsystems and drivers.
Excellent programming skills in C/C++ and Hands-on experience in ARM-based SoC.
Experience in BSP and Boot loaders
Linux Device drivers Development and knowledge of RTOS.
Device drivers experience preferably for following devices: UART, I2C, I2S, SPI, GPIO, PCIe, MMC, USB etc.,
Hands-on experience on WIFI and SDIO has added advantage.
Strong debugging skills.
Read more
Benison Technologies
at Benison Technologies
3 recruiters
Kiranpreet Kaur
Posted by Kiranpreet Kaur
Bengaluru (Bangalore)
3 - 4 yrs
₹10L - ₹15L / yr
Linux kernel
Kernel Programming
Linux/Unix
skill iconC
TCP/IP
+1 more

Want to work with an established & growing IT company? Join team Benison to have the right challenges that will help you accelerate your career growth to the next level, faster!   

Benison Technologies was started in 2011 with a mission to revolutionize the silicon industry in India, with a host of amazing big clients like Google, Cisco, McAfee, Intel, and so on, you get to experience the best of both worlds. If you consider yourself an engineer who is capable to join our ever-growing team, then this is the right opportunity for you:  

 

Why Benison Tech?   

We have a partial acquisition from one of the biggest names in the world (well we cant name them thanks to confidentiality) it’s one of the FAANG companies, and you can “Google” it if you like.  

Oh! & one more thing, this did not happen by accident, our team put a ton of efforts to turn this gigantic dream into a reality.  

Benison Tech has a consistent history of demonstrating growth through innovation time and again.   

We don’t stop there, we then re-invest our profits back into the initiatives for the growth of our people, our culture and the company. Now enough with us, let’s talk about the job roles & responsibilities:    

 

What you will be working on: 

  • You will be working on the next generation network security products, on various public clouds. 
  • In addition to development, you will also get your hands involved in the architectural changes while fixing the legacy issues. 
  • Planning, designing, integration for network security platforms. 
  • Key contributor for developing product strategies and features. 
  • You will also work on specific modules to help BYOD setups perform in a streamlined manner. 

 

Here are some technical skills required:  

  • Strong in kernel networking datapath, and TCP/IP stack.   
  • Develop Linux Kernel Drivers.   
  • Good exposure to Makefiles, and building RPMs.   
  • Working to develop and test complex systems software, software development tools, applications, drivers, numerical methods, UIs, and web.    
  • May work directly with companies developing and optimising compilers, operating systems, and other software technologies.   
  • Designing & coding to support new features in the OS or Products.   
  • Debugging kernel code.   
  • Debugging customer issues.   
  • Performance evaluation/improvement of Kernel Code.   
  • Participate in production deployment and assist the production support group when needed.   

 

What we expect from you:  

  • 3 Years of relevant Experience   
  • In-depth working knowledge of Linux Operating System.   
  • Excellent Linux system development debugging skills, including Linux kernel debugging.   
  • Outstanding C development skills.   
  • Good understanding of Networking L2 –L7 Protocols and network kernel driver.   
  • Experience in porting from various Linux kernel versions.   
  • Be a quick learner and be open to working on new technologies if needed.   
  • Excellent team player with strong verbal & written communication skills.   
  • Be able to step up when the situation demands such as meeting deadlines and critical production issues.   
  • Work Independently with a skilled team while defining new system requirements based on custom interaction and inputs 

 

If the above fits your skill-sets and tickles your interest then read below about the additional benefits that our company offers to talented folks like you:  

 

Work Culture and Benefits    

  • Competitive salary and benefits package  
    (H1-B which means a chance to work onsite out of India)   
  • A culture focused on talent development where you get promoted within the quarterly cycle of your anniversary. 
  • Opportunity to work with cutting-edge & challenging technologies including legacy tech. 
  • Open cafeteria to grab some munchies while you work, we make sure the space feels like your second home, you can also wear pyjamas if you like.   
  • Employee engagement initiatives such as project parties, flexible work hours, and long service awards, team bonding activities within the company, extra learning and personal development trainings, because why stop your learning at one thing!   
  • Insurance coverage: Group term life, personal accident, and Mediclaim hospitalization for self, spouse, two children, and your parents. (With some of the best insurance partners in India)  
  • Enjoy collaborative innovation (each members gets to innovate & think out of the box), along with highly experienced team managers who maintain diversity and work-life well-being.  
  • And of course, you get to work on projects from some of the most recognised brands within the networking and security space of the world, unlocking global opportunities to learn, grow & contribute in a way that is truly impactful yet purposeful at the same time.  

 

Still not satisfied, and want more proof?  

Head to our website https://benisontech.com/">https://benisontech.com to learn more.  

Read more
Ogive technology
at Ogive technology
3 recruiters
Ogive Technology
Posted by Ogive Technology
Remote, Hyderabad
0.6 - 1 yrs
₹2L - ₹4L / yr
Linux/Unix
Linux administration
skill iconC++
skill iconC
Job description: Firmware Engineer
 
Key Responsibilities:
 
To Analyse domain specific technical or low level requirement and modification as per end customer or system requirement.
Perform software testing including unit, functional and system level requirements including manual and automated
Write firmware for the specific system module.
Write integration Code and make push requests to git repository.
Performs code peer-review following coding guidelines and static code analysis
Troubleshoots software problems of limited difficulty.
Documenting technical deliverables like software specifications, design document, code commenting, test cases and test report, Release note etc. throughout the project life cycle.
Follow the defined process for software Development life cycle
Provide technical support to Team and contribute towards their Growth
Generate Reusable Code that can be contributed towards Teksuns Code bank.
Get hands on with new Technologies and Skills to keep yourself updated.
 
Required technical skills:
 
Excellent programming skills in C/C++
Linux boards bring up kernel level programming skills, device driver development is a must.
Experience with adding custom sensors, camera and LCD
Experience in Application Framework Building
Hands on experience with ARM based SoCs and alike.
Excellent analytical and problem-solving skills
Excellent debugging skills and hands on with the coding
Object oriented fundamentals and design
Reading schematics, datasheets, technical reference manual and Silicon revision sheets
Using tools like Logic Analyzer, DSO/CRO, Spectrum Analyzer.
Used Confluence, JIRA, GIT, SVN, bit-bucket, etc.
 
Good to have:
 
Exposure to edge computing.
 
Power Management for Low Power devices
 
Job Location - Hyderabad
 
 
 
Read more
Chennai, Pune, Bengaluru (Bangalore)
1 - 6 yrs
₹2.4L - ₹12L / yr
skill iconC
skill iconC++
Embedded Linux
Embedded C++
skill iconJava
+4 more
IELEKTRON is a design house, providing engineering services & solutions to global OEM/Tier1s in Automotive, Aerospace & Industrial IOT Segments through key value-added services in Embedded and Data Science/AI technologies.

· 150+ Engineers, Projected to 300+ engineers in FY22-23.
· 10+ Key Global Clients/Customer
· 50+ Global Project Successful deliveries.
· Key organization having EMBEDDED & DATA SCIENCE/ AI in one shop.
· ISO9001:2015 Certified & Established QMS Policies.

Key responsibilities :

Embedded Software application development using Programming language C / C++
Infotainment ECU software development on Linux IVI systems
Bluetooth/Wi-Fi/Tuner/Android AUTO/ Car play to work
AUTOSAR Module Configuration using vector tools for BSW Modules such as
Integrate MATLAB Models in to AUTOSAR Framework using MATLAB and Vector Tools
Read more
It offers user-friendly fiber speed equipment.
It offers user-friendly fiber speed equipment.
Agency job
via ConsultBae by Consult Bae
NCR (Delhi | Gurgaon | Noida)
5 - 10 yrs
₹10L - ₹20L / yr
skill iconC
Linux/Unix
Routing protocols
TCP/IP
Firewall

Software Engineer(Layer 2/Layer 3)

Location
: Gurgaon (WFH currently)


Experience/ Skills Required : 5 to 10 years

To be successful in this role you should be well versed with the concepts of networking and comfortable in C programming in a linux environment for embedded software. As we use Linux, experience with this operating system is a mandatory requirement, knowledge and experience on OpenWrt is a bonus.  Working experience with router software development for layer 3 and layer 4 features.


Domain knowledge required: IPv4, TCP/UDP, IPv6, NAT, Firewall (iptables), DHCPv4, DHCPv6, IPv6 prefix delegation, Port forwarding, Source based routing, Policy based routing, L3 QoS, IGMP proxy, IPv6 MLD snooping, DNS, DNS proxy. Knowledge on VoIP is a bonus. 

Management methods: TR069, SNMPv2, CLI.    

Operating system: Linux, OpenWrt  

Programming languages: C(must have), Python 


Working for us means having a healthy interest in Software but most of all, you like to work in a team. You like to take initiative and have the “just do it” approach. Having the right mentality and attitude are more important for us than a degree. Dedication, investigation and responsibility are keywords for us.   Preferred years of experience in industry/technology: 5-10 years.   


Role:


As a Software Engineer you develop new software features and solutions for our fibre connectivity product portfolio. The position offers a wide range of possibilities to work with everything from low-level Linux drivers to high-level applications. You develop for various protocols and HW interfaces, often in complex network scenarios in combination with customer specific requirements. The team is responsible for all SW development for existing and new Home Gateways. This means development of Linux drivers, network functionality, remote Management (TR-069) and VoIP application (sipapp). The development is mainly done in C and in Linux environment, knowledge in Python is an add-on. Products and development are realized in Agile.

Read more
Linksmart technologies Pvt ltd
at Linksmart technologies Pvt ltd
1 video
2 recruiters
Ashish Anand
Posted by Ashish Anand
Bengaluru (Bangalore)
3 - 18 yrs
₹8L - ₹20L / yr
OpenCV
skill iconC++
Linux/Unix
skill iconC
Looking for developer interested to do R&D work on 2D imaging experimenting deep with opencv libraries and optimizing those for mobile devices.
Read more
Why apply to jobs via Cutshort
people_solving_puzzle
Personalized job matches
Stop wasting time. Get matched with jobs that meet your skills, aspirations and preferences.
people_verifying_people
Verified hiring teams
See actual hiring teams, find common social connections or connect with them directly.
ai_chip
Move faster with AI
We use AI to get you faster responses, recommendations and unmatched user experience.
Did not find a job you were looking for?
icon
Search for relevant jobs from 10000+ companies such as Google, Amazon & Uber actively hiring on Cutshort.
companies logo
companies logo
companies logo
companies logo
companies logo
Get to hear about interesting companies hiring right now
Company logo
Company logo
Company logo
Company logo
Company logo
Linkedin iconFollow Cutshort
Users love Cutshort
Read about what our users have to say about finding their next opportunity on Cutshort.
Shubham Vishwakarma's profile image

Shubham Vishwakarma

Full Stack Developer - Averlon
I had an amazing experience. It was a delight getting interviewed via Cutshort. The entire end to end process was amazing. I would like to mention Reshika, she was just amazing wrt guiding me through the process. Thank you team.
Companies hiring on Cutshort
companies logos