It feels almost like yesterday when my first IC burst into smoke. I was working in a relatively peaceful lab disturbed only by the hum of running test instruments. On one fateful day, a cacophonic blast erupted from my testbench making heads turn near the immediate vicinity. The D.U.T. sample I was running measurements on was not able to withstand a worst-case test condition required by the customer specifications, consequently melting its outside package and exposing the (burnt) die inside. It was embarrassing, because it implied the product I was working on, whose reticle costed a pretty penny to manufacture, had to be scrapped (i.e. back to the drawing board).

Fast forward 10 years later, and such an incident never happened again (except of course, when I needed to perform a test that intentionally pushes the product to its utmost limits). I have both thrived working on LSI development projects individually and with a team(s), communicating with different departments to ascertain all LSI development stages of new IC  products goes smoothly and kicks off in mass production without a hitch.

This year marks my 10th year anniversary in the semiconductor industry (excluding my training years), and I would love to celebrate such a remarkable event by sharing with everyone the most important secrets and lessons I have learned over the course of my career (with high hopes it would also benefit anyone considering a similar career in microelectronics/IC design).

1.) Seek a mentor.

The IC design process isn't easy. It's a complex series of iterative stages that mandate a particular set of skills which can only be developed through experience. It follows that an experienced mentor can guide any budding dilletante in honing such skills. With a mentor, the correct practical skills needed by the mentee can be identified and focused on for successfully designing an IC product. Rookie mistakes are also minimized and learning becomes smooth, consequently accelerating professional growth.

Finding a mentor can be easier said than done though. When I was first starting out, I struggled to find a mentor who could imbibe unto me their experience and expertise in IC design and development. From within the company I work for to outside organizations such as LinkedIn and IEEE's mentorship program (which was voluntary and relied heavily on the mentor's timetable which was oftentimes saturated), managing to establish a bond and rewarding relationship with a seasoned industry expert can be wildly frustrating, especially when you're still learning the ropes to common industry practices (such as process-specific troubleshooting tips and tricks in designing an IC from your company's IP). There are of course varied reasons to the struggle as it demands another person's time and effort. But in due time, you might just find that one person who will be impressed enough by your determination, passion and perseverance and lend you a helping hand in your career growth.

Don't give up and you could find someone who would be willing to take you under their wing as a Padawan in IC design!

2.) Good communication is key. 

Most problems I encountered at work were usually rooted in miscommunication, whether technical or non-technical. Take a gander at this case example, where pre-silicon was designed with specs slightly different from the customer's needs. The delay requirement for a buffer was 50ns, but the circuit engineer understood it as a reference from 90% of signal A to 10% of signal B, instead of 50% to 50%. There was a miscommunication with the reference points used, hence timing requirements were not met. A re-adjustment on the circuit design becomes necessary, at the expense of time and effort. Such cases are prevented (if unpreventable, then mitigated) by paying close attention to detail in every part of one's work and ensuring completeness of information in both communication and documentation. 

IC design usually involves the collaboration of many teams/departments to ensure the utmost  quality in a product. Therefore, clarity and transparency within all parties and stakeholders is a must as it assists mutual understanding and prevents confusion or misinterpretation of design/process specs that lead to costly mistakes. Avoiding miscommunication also means  making things crystal clear to everyone. Holding meticulous design reviews and proactively creating protocols that address potential communication loopholes are essential to successful LSI development.

A reference I used during my junior years at work was the "Technical Communication Handbook" written by Markel/Selber. It's a handy reference and introduces a number of useful templates and checklists that can be modified based on one's actual situation at work.

3.) Make life easier for everyone.

It's easy to forget colleagues in the workplace are humans too, they are not perfect machines who will react to stimuli ideally and perform with algorithmic precision. Learning to gauge attitude and adjusting to interpersonal needs and preferences will go a long way in fostering a  harmonious work environment. In engineering, it's not enough to just "get along" on a social level, but is also required on a technical level. Your colleagues may have problems which only you can solve, and vice versa. So one must take a proactive approach in making others' lives easier, including getting to know and solving their problems.

Take a design problem where one of your colleagues is using for the first time an IP you're highly familiar with and is having difficulty modifying to meet certain customer requirements. Instead of watching your colleague struggle, chipping in would save a lot of time and simulation resources.

Another example would be if your colleagues are burdened with a ton of menial tasks, and you're well versed in automating them. You can make macros or automation tools that expedite your colleagues work. If you're accustomed to making such tools, development time  becomes faster and won't really consume a significant portion of your time (especially with the rise of AI that helps a lot in coding).

With the mindset of making life easier for your colleagues, the right habits should fall into place. Good documentation makes it easier for others to understand how you incorporated the company's IP towards an effective product solution. Regular comprehensive reporting of your situation to your superiors helps them determine if a deliverable for a design stage can be realistically met, avoiding delay and disappointment on the customer's side, etc.

4.) Teamwork makes the dream work.

This is closely knit to the previous tips as making life easier for colleagues and practicing good communication are contributing factors to good teamwork. The reasons are self-explanatory. Helping out colleagues increases overall team output and nurtures camaraderie, while effective communication prevents misunderstandings that cause problems for the team.

Working alone can be good too as one has control and takes ownership/responsibility over the entire project. But a team is sometimes necessary for bigger projects, having more manpower that can get more work done. So it's imperative to know how to work effectively in a team and get along with people from different walks of life. Acting as a cohesive team is what each member needs to strive for to deliver outputs on time and with quality assurance. It's also an opportunity to grow social and interpersonal skills, and to get on-hand experience on how to solve and deal with problems specific to particular cultures and social backgrounds.

Teams may also be dynamic, ever-changing based on customer demand. Therefore it is also worth knowing how to flexibly adjust to such changes. Preparing comprehensive manuals containing necessary product know-how or project information for new initiates saves time and prevents any margin for error related to false assumptions. For example, an ASIC requires verification of a digital block at transistor level, and a member from a different department was on-boarded to create a macro that can automatically convert RTL to transistor schematic (netlist). It would be tedious for that new team member to analyze the product's IP for compatibility, so making a manual explaining how the state machine diagram works for the product and a few pitfalls to watch out for (schematic design rules) would help the new member by leaps and bounds.

Teams may not always move like clockwork, due to conflicting ideas/points of view. In that regard, I would refer to an indispensable reference I've been faithfully adhering to since my days in the academe - i.e. Stephen Covey's 7 habits of highly effective people - in particular  seeking first to understand before being understood. The goal is to fully understand where the other party is coming from, identify the points of conflict, explain your side and what made you arrive at your own idea, and then unanimously determine the best path to go from there. 

When making mistakes, do not be afraid to admit faults and to seek help from your teammates. Ego is the biggest enemy of growth. Admitting that something needs to be improved on is an opportunity for change. By identifying one's shortcomings, the problem can be addressed, one can have those memorable "Eureka!" moments where a light bulb turns on on their heads, and problem recurrence is prevented.

5.) Automation always pays off.

It can be argued that some tasks may only come seldomly and would not need the cumbersome investment in automation, and honestly it all boils down to good judgment. But more often than not, the IC design process is highly iterative - hence tasks would also most likely be highly iterative even if they come seldomly for a product series. So with this expectation, automation almost always pays off (and I can't remember a case where an automation tool I've developed or used hasn't come in handy). The only problem I've encountered in automation is when there's not enough time to make the hard-coded tool user-friendly - i.e. other engineers can use it easily. I sometimes end up having to do it after the project is finished early or during my leisure.

I personally consider automation a form of art in itself. Funnily enough, most published materials on automation deal with mass production, and almost none cover the factors that play crucial roles in successful implementation, especially in an office or R&D setting. To give a simple example, the  planning and development phase in automation may seem like a simple addendum to any project balance sheet, but it isn't a fixed figure - it can be adjusted based on algorithm complexity and automated parameters. If the investment doesn't meet the budget, reducing complexity and no. of parameters can lower expenses resulting in a trade-off. This trade-off can then be fashioned to any project's needs. But there's more to it than that. Such an automation can find application to other projects. Should the budget from other projects that can potentially benefit from the automation be allocated to the current endeavor then? There's also more ways than one to skin a cat. If you've been in the game for 10 years, surely you will know there are a diverse set of tools available at your disposal: commercial, open-source, and in-house/custom. But when is the right time to use which? The ramifications  require extensive discussion and are best for another article.

6.) Keep learning.

The semiconductor industry caters to a dynamic market, always changing with every new technological innovation. Demands at work can change, and the need to skill-up continuously becomes necessary to still be relevant. Sometimes, an overwhelming feeling of accomplishment after finishing a project where everything was done impeccably can make one feel like there's nothing more to improve on and that there's nothing new left to learn. But more often than not, this judgment comes from a limited purview. It's always worth checking the latest news and trends to see and compare if the procedure used was most efficient, effective, and up-to-date.

There is always something new to learn when you're in the R&D department of any engineering field. Aside from being an enjoyable enterprise, continuous learning boosts problem-solving skills and creativity to approaching new challenges. It also builds one's confidence and resilience to learning curves, which can occur when tackling new projects.

7.) Manage time well.

The only way deadlines can be met is with a realistic plan. Plotting out a work-breakdown structure (WBS), allotting a reasonable amount of time for each component and making a valiant effort to following the WBS plan through ensures the LSI development schedule will be  right on track (there are a number of other useful project management tools but WBS seems the most applicable to my work in semiconductor R&D). Different situations demand differing approaches, so you would most probably need to use differing project management tools.

Keep in mind delays can cause disastrous ripple effects in the semiconductor industry. Once a schedule is committed to a customer, that schedule is set in stone and must be followed through at all costs. Otherwise, the company risks earning a bad reputation, losing face to its customers. For example, a delay in tape-out of initial samples of a product for testbench evaluation will delay actual testing of important electrical parameters. Any necessary silicon re-spins will be delayed and consequently, design reviews for mass production will also be delayed. At this point, the circuit engineer must brainstorm countermeasures to recover lost time. The schedule MUST be followed, and the cost of delay in this case could either be re-assignment of manpower (additional workers) and resources (additional man-hours) both of which are accrued expenses for the company.

Needless to say, proper time management makes projects less stressful (for everyone) and provides more clarity to what must be accomplished by a specific date. It prevents frustration among teams, hastens signoff, and avoids erosion of stakeholder trust.

8.) Contribute value.

Akin to common good, contributing value is easy to overlook. Work protocols can't always be fashioned to yield outputs with the best value, and it's sometimes up to the employee to decide and adjust on how to work effectively. For example, the system is not perfect, (rules are written with a predetermined situation in mind) and flaws in the system mean that sometimes you need to make decisions considering variables outside the scope of what is defined by the rules to achieve a win-win situation for everyone (in order to service the common good). It may also mean sometimes committing to sacrifices having overarching benefits in the long run.

In fast-paced environments, band-aid solutions often overshadow thoughtful, long-term contributions. There is a myopic view on personal work deliverables, where process improvement can also be overlooked. So it is important to remember making insightful contributions and initiatives that cater to process improvement to get the best out of one's work.

9.) Experience is the best teacher.

Theory does not always fit well to the real world. The academe works on controlled variables, and there are a lot of uncontrolled variables in the real world unaccounted for in theory. An example would be process variation in analog IC design. Current mirrors need to have transistor pairs with electrical characteristics exactly matching each other to operate as expected. But imperfections in the fabrication process - i.e. process variations seen in PCM data - cause the circuit to behave slightly differently from expected typical results (and are usually compared with Monte Carlo simulation results).

Some lessons are also better learned on the physical testbench or on the tester in the on-site factory. PCB layout effects and parasitics can significantly influence D.U.T. response. There may also be setup variables in the measurement setup that adversely affect evaluation results, leading the circuit engineer to make false conclusions. Instruments are not perfect and need to have appropriate settings to measure certain sensitive parameters.

10.) Create opportunities - make things happen!

Referring again to Stephen Covey's 7 habits, being proactive in creating opportunities for oneself can go a long way in building one's career. Closely tied to all the previous tips, finding a mentor, communicating well, making things easier for colleagues by automating menial tasks and meeting deadlines by effective time management, being a good team player, continuously learning to keep oneself relevant and contributing value to the company all creates opportunities for career growth.

Creating career opportunities for oneself builds confidence and self-reliance. Small opportunities also compound. A new project can lead to new connections, and new risks can lead to new breakthroughs. Every step  taken is a new experience - the best teacher. And each new experience may open up possible new career paths and more new opportunities one may have not known existed. 


To summarize the list: