'viz4x' supports software development for smartphone applications and embedded systems, as well as the establishment of development frameworks.
We're particularly good at visualization of data and progress, and contributes to the success of various projects around it.
Software Engineer
/ Working in Shizuoka or Tokyo, Japan
/ 20- years experience
/ Loves TV games and snowboarding
Have a interest in data visualization, having been inspired by Charles Minard's Infographics which expresses the rigors of Napoleon's expedition. Be familiar with various visualization techniques that can convey the main points.
Experienced both front-end and back-end web development in building a core system for business. In particular, be good at handling graphic libraries that run on browsers such as d3 and WebGL.
Experience developing non-gaming VR apps running on consumer game consoles. Expertise in handling large scale data with GPU programming. Not limited to VR, but also skills in developing 3D apps that run on browsers.
Experience in large-scale software development connecting multiple sites, including overseas. Be aware of the importance of processes and tools in development, and expertise in project start-up.
Development of an algorithm for automatic tracking of recording timers onboard HDD recorders.
Timers for recording regular (e.g., weekly) TV programs, such as drama programs, may shift the start time if irregular programs are included before or after the program. Even in such cases, the timer can be automatically modified to record the entire program.
In the development, it was difficult to verify and evaluate the algorithm. True Positive and False Negative tests were conducted using a large amount of actual program information, and automatic tests were constructed utilizing EPG data updated daily in real time.
Engaged in embedded software development of digital TVs.
In the development, I was mainly in charge of the UI layer and designed and implemented basic UI such as volume bars and menus. I was also in charge of the overall implementation of the 3D control module for the first 3D project.
This was a turning point for a major review of the software structure, as the timing was right for the switch from analog to digital broadcasting, and it was also necessary to respond to the needs of Internet connection. In order to develop a single code set for a large number of lineups, such as for overseas markets and different sizes, we introduced a number of variation management mechanisms with an awareness of Product-Line development.
In large-scale software development, it is essential to have a well-designed architecture and base development process in order to efficiently continue releasing quality software.
Defining device APIs and developing SDK for them.
With the widespread use of smartphones, use cases in which devices in a house can be operated from a smartphone have been attracting attention. Among these, Lens-type camera introduced in 2013 was designed to be connected to a smartphone, and in order to make this a reality, it was essential to create a general-purpose mechanism for connecting devices.
In such a movement, I was engaged in the development of a common framework across various devices. The development work included defining APIs for devices and developing SDKs for Android and iOS using these APIs. The key point was how to define APIs in a device-independent manner, and at the time, we defined more than 300 APIs for more than five different products, including TVs and cameras.
When defining APIs, it is important to maintain specification documents that are consistent with these APIs. In addition, since different devices and their lineups have different APIs that can be used, it was necessary to build a system that can output various API definition documents within a single set of definition code. Some of these definition documents (e.g. Camera Remote API) were made available to general developers. (Currently, it seems to have been replaced by a new SDK.)
Visualizing the overcrowded timetable of the Shinkansen in Japan.
(site
It is well known that Shinkansen (especially Tokaido Shinkansen) in Japan operates on an overcrowded timetable, which is rare even in the world, and this site visualizes how each car is running. The site covers not only Tokaido Line, but also Hokkaido to Kyushu Shinkansen. The simulation speed can be selected from constant speed, 60x (one minute is one second), and 600x. In the visualization, the timetable of each station is used as a reference, but when Nozomi overtakes Kodama, the operating speed in the section is adjusted so that Nozomi overtakes Kodama at the proper station.
Click the link below to go directly to the highlights.
Please note that the timetable data is current as of 2016 and is not up-to-date. Also, please note that this site does not provide real-time information on service status (suspensions, delays, etc.).
Launching an aggregation site of tweets about rainbows. (Mock site
Don't you feel happy when you look up at the sky and find a rainbow? I conceived a system that notifies you in real time when there is a rainbow near you, so that you don't miss it. Since Twitter posts about them are almost real-time, the system selected posts about rainbows from the tweets and plotted them on a map.
Even though it is easy to say "Tweets related to rainbow," it was difficult because there were many different patterns. The most difficult ones were those related to games. In some card games, the cards with high rarity are called "rainbow cards" and cannot be extracted simply by a text string, so image recognition is used. In addition, there are cases of posting rainbows that appear rarely in MMOPRGs, and with the evolution of game computer graphics, it has become difficult to distinguish them from actual rainbow images. The location of the rainbow is given by the GPS information in the attribute of the Tweet, which is almost always empty, so I used Geo conversion from place name to location and guess the relationship with other Tweets based on the time.
To realize the recognition function, a large number of rainbow images were manually collected, but the site is now shut down because it could not continue to maintain the expected detection accuracy.
Map of shops and facilities with hours of operation (in Fukui
Just as I was getting interested in data analysis, I found that several local governments were holding application contests using open data. This is a WebApp I made for that purpose. The mechanism is very simple. It uses open data provided by the local government with a little processing, and everything else runs in the browser.
The most ingenious part of the WebApp is that it focuses on the business hours included in the data and displays only shops that are open for business. The time can be changed in the simulation. In addition, the time required to travel from the current location to the shop is also displayed, allowing visitors to find an open shop while sightseeing and ensuring that they can enter during business hours.
Thanks to a lot of supports, I received the Grand Prize in the Fukui contest and the Excellence Award in the Aizu contest. As for the Urban data challenge, I only made an entry.
Prototype development of VR application with visualization of large scale data running on consumer game consoles.
The purpose of this research was to find new customer value by displaying large-scale data available within the company in a 3D space and visualizing it using a VR device. This was the first time to develop software using an SDK for games, and I remember being very puzzled at first. In order to achieve faster rendering, we even went as far as to implement software at the low-level layer (e.g., interrupting the rendering pipeline to perform operations).
The technology for VR applications was still more than mature at this point, and prolonged use caused considerable brain fatigue. (After an hour of validation with VR on, I had a headache for the rest of the day...) However, I saw great potential in mapping large-scale data into a 3D space, and it is my experience that supports my current life's work.
Note that this research and development ended with a prototype, and there are no images captured or other information that can be made public. Therefore, the images on this page are only for illustrative purpose.
Development of a data collection function from customer vehicles for automated driving system.
While conducting research and development of large-scale data visualization, I became aware of the difficulty of collecting high-quality data on a large scale and on a continuous basis. Among other things, I believe that new business value could be found by tracking and analyzing the flow of human and vehicle movement. So I left Sony, where I had worked for 13 years, for Toyota. There was an opening for an engineer for automatic driving, and I was able to find a job in the data analysis field.
As of 2021, Toyota has a car on the market with an automated driving system, but at the time the system was still under development. In this context, we had the opportunity to take the lead in developing a new data collection function.
Although I left the project to lead the start-up of the next-generation system development without seeing the functionality completed, it has become the foundation for collecting data that will support the development of Toyota's automated driving system, which will continue in the future.
Efforts to innovate the car development process with an emphasis on software development (ongoing)
A car is an aggregate of many ECUs connected by a huge number of harnesses, and its structure is very different from that of digital home appliances such as smartphones and TVs. Even I, who have long experience in software development for digital TVs, was surprised at the number of people involved in the development and the complexity of the process. Nowadays, the area of software development in car development is attracting attention, not only from Toyota but also from other companies. More value provision to customers is shifting to the software side, but I feel that such a trend is several years to more than a decade behind that of the consumer electronics industry.
Now, I am moving away from the development of automated driving systems, and am taking on the challenge of how to improve the efficiency of overall vehicle development broadly, and what software development should be like in that context, in order to make changes that are not limited by the way Toyota has fostered in the past, but can still follow the good parts of the system.