Aug 31, 2024

Timeline of getting a green card(EB1-3) after L-1A

My case took 1 year and 6 months. It could take 1 year if I skipped PERM preparation at the beginning and I submitted I-485 in Jan. 2024. I postponed the submittion because of the abroad travel between Jan. and Feb. 2024.


Aug. 28 2022 Arrived in US.

Sep. 01 2022 Transfer to US office.

Mar. 08 2023 Requested to start green card application.

Mar. 15 2023 Approved by the company.

Jun. 2023 Started PERM.

Jun. - Jul. 2023 Prepared required documents.

Aug. 11 2023 Submitted PERM.

Oct. 2 2023 Noticed that L-1A can skip PERM.

Oct. 16 2023 Started I-140

Nov. 1 2023 Submitted I-140 with premium 

Nov. 14 2023 Approval of I-140

Nov. 30 2023 Started I-485

Mar. 2 2024 Submitted I-485

Aug. 27 2024 Approval of I-485 and recived the green card.


Jul 26, 2024

liquibase.exception.LockException

Unlock with the following SQL


UPDATE DATABASECHANGELOGLOCK SET LOCKED=0, LOCKGRANTED=null, LOCKEDBY=null where ID=1;

Jun 21, 2024

TestNG unable to find valid certification path to requested target

I have the following error when I run a test.

org.testng.TestNGException: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at org.testng.TestNG.parseSuite(TestNG.java:327)
at org.testng.TestNG.initializeSuitesAndJarFile(TestNG.java:348)
at com.intellij.rt.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:39)
at com.intellij.rt.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:105)
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at java.base/sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141)

The reason is Java keystore does not have testNG certificate. You need to add it.
Here is how to.

1. Download testng.org certificate.
    Visit https://testng.org/ and click filter icon on the address bar.


Click "Connection is secure"



Click "Certificate is valid"


Click "Details" tab







Click Export button.

Download "testng.org.crt" file.


2. Run the following command.
"C:\Program Files\Zulu\zulu-11\bin\keytool.exe" -importcert -file C:\dev\testng.org.crt -trustcacerts -keystore "C:\Program Files\Zulu\zulu-11\lib\security\cacerts"
   You will be asked to input password. The default password is "changeit". And input yes to trust testng certificate.


Now your test will pass or fail. Good luck!

May 15, 2024

2024 resolutions: Read 10 favorite books for software engineers

Alex shared his favorite 10 books. I plan to read 10 books in 2024.

https://x.com/alexxubyte/status/1788232858198556762


 General Advice

1 - The Pragmatic Programmer by Andrew Hunt and David Thomas
Done 15 years ago? 2 - Code Complete by Steve McConnell: Often considered a bible for software developers, this comprehensive book covers all aspects of software development, from design and coding to testing and maintenance. Coding 1 - Clean Code by Robert C. Martin 2 - Refactoring by Martin Fowler Software Architecture 1 - Designing Data-Intensive Applications by Martin Kleppmann 2 - System Design Interview (our own book :)) Design Patterns 1 - Design Patterns by Eric Gamma and Others 2 - Domain-Driven Design by Eric Evans Data Structures and Algorithms 1 - Introduction to Algorithms by Cormen, Leiserson, Rivest, and Stein 2 - Cracking the Coding Interview by Gayle Laakmann McDowell

If I completed above books early, I will try the following books.

The Pragmatic Programmer by David Thomas and Andrew Hunt.

Clean Code by Uncle Bob Martin.
Head First Design Patterns by Eric Freeman.
Refactoring by Martin Fowler.

Grokking Algorithms by Aditya Bhargava.
Introduction to Algorithms, by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein

Learning SQL by Alan Beaulieu (Free E-book).

Growing OO Software by Tests by Steve Freeman.
The Art of Unit Testing by Roy Osherove.
TDD by Example by Kent Beck.